코딩테스트
[BaekJoon 1158번] 요세푸스 문제(Python)
하루살이
2022. 1. 4. 20:52
코딩테스트 연습 1일차
요세푸스 문제입니다.
문제 링크 : https://www.acmicpc.net/problem/1158
1158번: 요세푸스 문제
첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000)
www.acmicpc.net
Solution
n,k = map(int, input().split())
arr = [] #처음 원에 앉아있는 사람들
answer = [] #제거된 사람들
for i in range(n):
arr.append(i+1)
num = 0 #제거할 사람 인덱스 번호
while len(arr)>0:
num = (num+(k-1)) % len(arr)
popElement = arr.pop(num)
answer.append(str(popElement))
print("<%s>" %(", ".join(answer)))