https://www.acmicpc.net/problem/1966
import sys
import json
from collections import deque
# with open("./data.txt", "r") as file:
# def input():
# return file.readline().strip()
def input():
return sys.stdin.readline().strip()
K = int(input())
cnt = 0
for i in range(K):
N, M = map(int, input().split())
arr = list(map(int, input().split()))
Q = deque()
# json 형식으로
for q in range(N):
data = {
"value": arr[q],
"isYn": M == q
}
Q.append(data)
# 정렬이 끝나고 원하는 값을 찾을 때까지 방복
while True:
data = Q.popleft()
value = data['value']
isYn = data['isYn']
# 뒤에 현재 값보다 큰게 존재한다면
result = any(Q[b]["value"] > value for b in range(len(Q)))
if(result):
Q.append(data)
else:
cnt += 1
if(isYn == True):
break
print(cnt)
cnt = 0
찾고자 하는 값이 이동될 때 해당 값이 어디에 있는지 구분할 플래그가 필요하여
json 형식으로 만들어서 큐에 넣어줬다.
프린트를 출력하려고 할 때 큐에 현재 값보다
큰게 존재한다면 맨 뒤로 보내주었다.
카운트는 프린트를 출력하는 시점에 해야하기 때문에 뒤로 보내줄 땐 카운트 x
그리고 이를 원하는 값을 찾을 때까지 반복!