import sys
input = sys.stdin.readline().split()
CircularQueue = []
for i in range(int(input[0])):
CircularQueue.append(i+1)
num = int(input[1])
result = []
index = 0
while len(CircularQueue) != 0:
index += num - 1
if index >= len(CircularQueue):
index = index % len(CircularQueue)
result.append(CircularQueue.pop(index))
print("<", ', '.join(str(i) for i in result)[:], ">", sep="")
join 함수 : 리스트에 있는 요소들을 하나의 문자열로 바꾸어 반환하는 함수
''.join(리스트)
: 매개변수로 ['a', 'b', 'c'] 리스트가 들어왔을 때 'abc'의 문자열로 합쳐서 반환
'구분자'.join(리스트)
: 리스트의 요소들 사이에 '구분자'에 들어온 구분자를 넣어서 하나의 문자열로 합쳐서 반환
ex) '_'.join(['a', 'b', 'c']) 라 하면 "a_b_c" 문자열로 반환
import sys
input = sys.stdin.readline().split() # input[0]이 7이고 input[1]이 3
CircularQueue = []
for i in range(int(input[0])): # 큐에 1~7까지 넣기 위한 for문
CircularQueue.append(i + 1) # i가 0부터 시작이니까 +1해서 리스트에 append
num = int(input[1])
result = []
index = 0
while len(CircularQueue) != 0:
index += num - 1 # 큐의 인덱스는 0부터 시작하니까 -1해줌
if index >= len(CircularQueue): # 한바퀴 다 돌았을 때 현재 큐(리스트) 길이로 나눠줘서 처음으로 돌아가게 구현
index = index % len(CircularQueue)
result.append(CircularQueue.pop(index)) # 큐에서 pop해서 result에 append
print("<", ', '.join(str(i) for i in result)[:], ">", sep="") # 결과 출력
생각보다 어려웠던 문제... 마지막 출력을 간결하게 할 수 있는 방법이 있는거 같은데 모르겠어서 구글링해봄ㅎㅋㅋㅋㅋ 찾아보니까 입력받는거도 간결하게 할 수는 있는데 굳이 안바꿨다..ㅎ