반응형
알고리즘 분류
- 자료 구조
- 덱
SOLUTION
import sys
from collections import deque
N, M = map(int, sys.stdin.readline().split())
nums = list(map(int, sys.stdin.readline().split()))
queue = deque([i for i in range(1,N+1)])
cnt = 0
for num in nums:
while True:
if queue[0] == num:
queue.popleft()
break
else:
if queue.index(num) > len(queue) // 2:
while queue[0] != num:
queue.rotate(1)
cnt += 1
else:
while queue[0] != num:
queue.rotate(-1)
cnt += 1
print(cnt)
'코딩테스트 대비 > 단계별 코딩 테스트 준비(27일 과정)' 카테고리의 다른 글
[백트래킹/Python] 14888번: 연산자 끼워넣기 - 효과는 굉장했다! (0) | 2022.02.19 |
---|---|
[백트래킹/Python] 15649번: N과 M(1) - 효과는 굉장했다! (0) | 2022.02.11 |
[큐/Python] 2164번: 카드2 - 효과는 굉장했다! (0) | 2022.02.11 |
[스택/Python] 4949번: 균형잡힌 세상 - 효과는 굉장했다! (0) | 2022.02.11 |
[스택/Python] 17298번: 오큰수 - 효과는 굉장했다! (0) | 2022.02.11 |