반응형
https://www.acmicpc.net/problem/1021
from collections import deque
n, m = map(int, input().split())
o = list(map(int, input().split()))
q = deque([i+1 for i in range(n)])
ans = 0
for i in range(m):
t = q.index(o[i])
if t < len(q)/2:
ans += t
q.rotate(-t)
q.popleft()
else:
ans += len(q) - t
q.rotate(len(q) - t)
q.popleft()
print(ans)
사실 문제의 의도는 이게 아니겠지만 시간 제한이 2초로 넉넉하고 N도 50밖에 안되길래 진짜 시키는대로 한 번 풀어봤습니다. 정말 하라는 그대로 데크를 만들고 필요한 만큼 rotate시켜가면서 풀면 끝인 문제라 아마 시간이 좀 지나서 N의 조건이 커지거나 시간 제한이 더 줄어들면 아마 통과하지 못하겠죠.
반응형
'Problem Solving > BOJ' 카테고리의 다른 글
[BOJ][Python]1072 풀이 (0) | 2023.07.03 |
---|---|
[BOJ][Python]1063 풀이 (0) | 2023.07.02 |
[BOJ][Python]1004 풀이 (0) | 2023.06.29 |
[BOJ][Python]4344 풀이 (0) | 2023.06.28 |