백준 [ALGORITHM] - 카드2 (2164)

2023. 4. 21. 13:11코딩/백준 [ALGORITHM]

반응형
n = int(input())
lst = []

for i in range(1,n+1):
    lst.append(i)
for j in range(n-1):
    del lst[0]
    temp = lst[0]
    del lst[0]
    lst.append(temp)
print(' '.join(map(str,lst)))

리스트로 구현하게 된다면 수가 커질경우에 리스트를 앞으로 하나씩 땡기는 과정에서 시간이 많이 소요되게 된다.

따라서 위 코드는 시간 초과가 발생한다.

 

from queue import deque

n = int(input())
lst = deque(range(1, n+1))

for j in range(n-1):
    lst.popleft()
    temp = lst.popleft()
    lst.append(temp)

print(' '.join(map(str,lst)))

따라서 이와 같은 큐 라이브러리를 이용하여 해결하였다.

반응형