자기개발👨💻/코딩 알고리즘
[python] 백준2164 카드2
천숭이
2021. 7. 8. 20:54
from collections import deque
import sys
n=int(sys.stdin.readline())
numbers=deque([i for i in range(1,n+1)])
cnt=0
while(cnt<n-1):
numbers.popleft();
numbers.append(numbers.popleft())
cnt+=1
print(numbers[0])
collections 라이브러리의 deque를 사용해야한다
리스트를 사용하면 O(n)의 시간복잡도가 나오지만
deque를 사용하면 O(1)의 시간복잡도가 나오며 실행시간이 매우 줄어든다