deque()
를 사용할 줄만 안다면 해결할 수 있다.from collections import deque
n, k = map(int, input().split())
arr = [i for i in range(1, n + 1)]
q = deque(arr)
while len(q) > 1:
q.rotate(-1)
for _ in range(k - 1):
q.popleft()
if len(q) == 1:
break
print(q[0])
rotate(1)
: 가장 뒤 원소를 빼서(pop()
)
앞으로 넣는다. (appendleft()
)rotate(-1)
: 가장 앞 원소를 빼서(popleft()
)
뒤로 넣는다. (append()
)