숫자들을 deque에 넣어두고 rotate를 이용하여 돌리고 마지막 숫자를 찾아내는, 다소 직관적인 방식으로 해결하였다.
n = 7, k = 3인 경우
숫자 | 답 |
4, 5, 6, 7, 1, 2, 3 | 3 |
7, 1, 2, 4, 5, 6 | 6 |
4, 5, 7, 1, 2 | 2 |
1, 4, 5, 7 | 7 |
1, 4, 5 | 5 |
1, 4, (1) | 1 |
4, (4, 4) | 4 |
내 풀이(72ms)
from collections import deque
n, k = map(int, input().split())
permu = []
num_list = deque(range(1, n+1))
for _ in range(n):
num_list.rotate(-1*k)
permu.append(num_list.pop())
print('<', end='')
print(*permu, sep=", ", end='')
print('>')
'백준' 카테고리의 다른 글
[골드 V] 1245. 농장 관리 - 파이썬 (0) | 2023.02.20 |
---|