[백준] 2164번 카드2 ★

거북이·2023년 1월 11일
0

백준[실버4]

목록 보기
11/91
post-thumbnail

💡문제접근

  • 별다른 자료 구조를 사용하지 않고 작성했다가 시간초과가 발생했다. 이 문제는 자료 구조 중의 하나인 큐를 이용하는 문제다.
  • 맨 위에 있는 카드를 remove하고 그 다음 맨 위에 있는 카드를 맨 아래로 옮기는 과정을 수행하는 popleft를 사용하면 된다.

💡코드(메모리 : 50972KB, 시간 : 232ms)

from collections import deque

N = int(input())
queue = deque([])
for i in range(1, N+1):
    queue.append(i)

while True:
    if len(queue) == 1:
        break
    else:
        queue.remove(queue[0])
        queue.append(queue.popleft())
print(queue[0])

💡소요시간 : 6m

0개의 댓글