[백준 2164] 카드 2

Junyoung Park·2022년 2월 25일
0

코딩테스트

목록 보기
84/631
post-thumbnail

1. 문제 설명

카드 2

2. 문제 분석

큐를 사용해 주어진 작업을 반복하는 문제. 리스트보다 디큐를 사용하자.

3. 나의 풀이

from collections import deque

n = int(input())
queue = deque()

for i in range(1, n+1):
    queue.append(i)
    # O(N)

while len(queue) != 1:
    # 카드 1장만 남을 때까지 반복.
    queue.popleft()
    # 가장 앞의 카드를 버린다.
    first = queue.popleft()
    queue.append(first)
    # 맨 위의 장을 맨 아래로 이동한다.
print(queue.popleft())

profile
JUST DO IT

0개의 댓글