반응형
https://www.acmicpc.net/problem/11866
n, k = map(int, input().split())
people = [i for i in range(1, n+1)]
idx = 0 # 제거해야 할 위치
delete = [] # 제거할 순서를 담은 리스트
while people:
idx = (idx + k - 1) % len(people) # 제거할 위치 구하기
delete.append(people.pop(idx))
print('<' + str(delete)[1: -1] + '>')
1. idx는 리스트에서 제거해야 할 위치를 담고 있는 변수이고, delete는 제거해야 할 사람의 순서를 담은 리스트이다.
2. people에 남아있는 값이 없을 때까지 사람을 제거한다.
2-1. 제거해야할 위치를 구해서 idx를 갱신한다.
2-2. people에서 제거한 사람을 delete에 추가한다.
3. 결과를 출력한다.
반응형
'Algorithm > 백준' 카테고리의 다른 글
[백준/Python] 절대값 힙 (0) | 2021.10.23 |
---|---|
[백준/Python] 카드 (0) | 2021.10.13 |
[백준/Python] 후위 표기식2 (0) | 2021.10.07 |
[백준/Python] 괄호 (0) | 2021.10.06 |
[백준/Python] 듣보잡 (0) | 2021.10.06 |