https://www.acmicpc.net/problem/11866
11866번: 요세푸스 문제 0
첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000)
www.acmicpc.net

import sys
from collections import deque
N, K = map(int, sys.stdin.readline().rstrip().split())
deq = deque([i for i in range(1, N+1)])
result = []
while deq :
for i in range(K-1) :
deq.append(deq.popleft())
result.append(deq.popleft())
print('<', ', '.join(list(map(str, result))), '>', sep='')
import sys
from collections import deque
N, K = map(int, sys.stdin.readline().rstrip().split())
deq = deque([i for i in range(1, N+1)])
result = []
while deq :
deq.rotate(-K + 1)
result.append(deq.popleft())
print('<', ', '.join(list(map(str, result))), '>', sep='')
+ deq rotate() 사용.
deque를 이용하여 원형느낌으로 수정해주자
'CT' 카테고리의 다른 글
DFS/BFS - 음료수 얼려 먹기, 미로탈출 (0) | 2024.03.07 |
---|---|
[Python] 소수 판별 방법, 에라토스테네스의 체 (0) | 2023.09.07 |
[Python] 백준 2164번 : 카드2 파이썬 (0) | 2023.09.06 |
[Python] 백준 28279번 : 덱 2 파이썬 (0) | 2023.09.06 |
[Python] 백준 18258번 : 큐 2 파이썬 (0) | 2023.09.06 |
댓글