728x90
반응형

기본적인 덱 문제이다. 조금 더 쉽게 풀 수도 있을 것 같은 문제인데 연습 삼아 그냥 이런 식으로 풀어봤다.

from collections import deque

N = int(input())
li = [[n, i+1] for i, n in enumerate(map(int, input().split()))]
queue = deque(li)
while queue:
    t = queue.popleft()
    print(t[1], end=' ')
    if queue and t[0] > 0:
        for _ in range(t[0]-1):
            queue.append(queue.popleft())
    elif queue and t[0] < 0:
        for _ in range(-t[0]):
            queue.appendleft(queue.pop())
print()
728x90
반응형

+ Recent posts