[백준 1021][Python] 회전하는 큐

봉글렛·2023년 1월 23일

백준

목록 보기
41/55

문제 링크 https://www.acmicpc.net/problem/1021
오랜만에 큐문제라서... deque를 사용해서 풀었다.

풀이

from collections import deque

n, m = map(int, input().split())
q = deque([i for i in range(1, n + 1)])
pick = list(map(int, input().split()))
cnt = 0

for i in pick:
    while True:
        if q[0] == i:
            q.popleft()
            break
        else:
            if q.index(i) <= len(q) // 2:
                q.rotate(-1)
                cnt += 1
            else:
                q.rotate(1)
                cnt += 1
print(cnt)
profile
어쩌다 개발자 (할 수 있을 때까지!!!!)

0개의 댓글