728x90
반응형

그리디 알고리즘 & 덱 문제이다.

덱의 맨 처음 값보다 t가 크다면 덱의 맨 뒤에 t를 추가, 그렇지 않다면 덱의 맨 앞에 t를 추가해주면 된다. 

from collections import deque

for _ in range(int(input())):
    N = int(input())
    li = deque(input().split())
    queue = deque(li.popleft())
    while li:
        t = li.popleft()
        if t > queue[0]:
            queue.append(t)
        else:
            queue.appendleft(t)
    print(''.join(queue))
728x90
반응형

+ Recent posts