tier 요세푸스 문제 0

풀이

큐에 부터 까지를 순서대로 넣습니다.

번째 사람을 제거하는 것은 큐에서 하나를 빼 다시 큐에 넣는 것을 번 반복한 다음 큐에서 하나를 제거하는 것과 같습니다.

이를 계속 반복하면 에 해결할 수 있습니다.

코드

from collections import deque
 
 
def main():
    N, K = map(int, input().split())
 
    queue = deque(range(1, N + 1))
 
    print("<", end="")
    while len(queue) > 1:
        for _ in range(K - 1):
            queue.append(queue.popleft())
        print(queue.popleft(), end=", ")
    print(queue.popleft(), end=">")
 
 
main()