n, k = map(int, input().split())
print('<', end = '')
que = [x+1 for x in range(n)]
point = 0
count = 0
stack = 0
while stack < n :
count = count + 1
if count == k :
print(que[point], end = '')
count = 0
stack = stack + 1
if stack != n :
print(', ', end = '')
else :
que.append(que[point])
point = point + 1
print('>')
|
머리를 꼬리에 다시 넣는 큐를 구현하되 3번에 한번씩은 다시 넣지 않고 프린트한다.
머리를 del하면 시간을 많이 잡아먹으니 point를 써서 불용처리만 한다.
출력횟수를 카운트해서 n이 되면 끝
'Week 01 ~ 04 : 알고리즘 문제 풀이' 카테고리의 다른 글
파이썬 백준 11279 최대 힙 (0) | 2021.11.15 |
---|---|
파이썬 백준 3190 뱀 (0) | 2021.11.15 |
파이썬 백준 2164 카드2 (0) | 2021.11.15 |
파이썬 백준 18258 큐2 (0) | 2021.11.15 |
파이썬 백준 2812 크게 만들기 (0) | 2021.11.15 |