백준 11866번 "요세푸스 문제 0"

sanha_OvO·2021년 4월 28일
0

Algorithm

목록 보기
32/84

문제

백준 11866번 요세푸스 문제 0


풀이


1 ~ N까지의 큐를 계속 해서 pop하고 push하는 과정에서
K번째 pop되는 수를 다시 push하지 않고 요세푸스 수열에 차례대로 넣어주면 된다.


Python 코드

import sys
from collections import deque
input = sys.stdin.readline

n, k = map(int, input().split())
que = deque([i for i in range(1, n+1)])
answer = []

while len(que) > 0:
  for _ in range(k-1):
    que.append(que.popleft())
  answer.append(que.popleft())

print('<', end="")
print(*answer, sep=', ', end='>\n')
profile
Web Developer / Composer

0개의 댓글