p_택배 상자 꺼내기_389478
| source | school.programmers.co.kr/learn/course... |
| type | 📌 개발노트 |
| topics | 600-알고리즘 & 코딩테스트 601 구현 & 완전탐색 |
| types | 문제풀이 |
| 정답여부 | 성공 |
문제
수직으로만 꺼냂 수잇음
n으로 나눠서
몫이 홀수면 왼쪽부터 짝수면 오른쪽부터임
나머지가 0이면 풀 잇기 시작 하면 n-나머지 만큼공간이 비어잇음
답
def solution(n, w, num):
# 0부터시작 다.
def xyCalculate(value):
y = (value-1) // w # 몫
b = (value-1) % w # 나머지
isEven = y % 2 == 0 # 짝수면 왼쪽부터
x = b if isEven else w-1 - b
return [y,x,isEven]
n_y,n_x,n_isEven = xyCalculate(n)
num_y,num_x,num_isEven = xyCalculate(num)
answer = n_y-num_y
if n_isEven:
# 왼쪽부터참
if num_x> n_x:
answer -= 1
else:
if num_x<n_x:
answer -= 1
return answer + 1