<내 코드>
from collections import deque
n = int(input())
nums = deque()
for i in range(1, n+1):
nums.append(i)
def que():
cnt = 0
while(len(nums) >= 1):
cnt += 1
if(len(nums) == 1):
return nums[0]
if(cnt % 2 == 1):
nums.popleft()
elif(cnt % 2 == 0):
nums.append(nums.popleft())
print(que())
처음에 deque 사용하지 않고 pop() 2개를 사용했더니 역시나 시간 초과가 났다..
카운트를 이용해 홀수, 짝수 순서에 따라 카드 제거 & 카드 뒤로 이동을 구현했다.
반응형
'알고리즘 문제풀기 > 백준 - Python' 카테고리의 다른 글
[백준 11866] 요세푸스 순열 - Python (0) | 2020.08.18 |
---|---|
[백준 1966] 프린터 큐 - Python (0) | 2020.08.17 |
[백준 18258] 큐 2 - Python (0) | 2020.07.25 |
[백준 1874] 스택 수열 - Python (0) | 2020.07.24 |
[백준 10828] 스택 - Python (0) | 2020.07.24 |