#include <iostream>
#include <queue>
using namespace std;
int main() {
int count = 0;
int test_con;
cin >> test_con;
int n, loc, pri; // 개수(1~100), 궁금한 것 위치(0~n), 중요도(1~9, 정수, 중복 가능)
for (int i = 0; i < test_con; ++i) {
count = 0;
cin >> n >> loc;
queue<pair<int, int>> q;
priority_queue<int> pq;
for (int j = 0; j < n; ++j) {
cin >> pri;
q.push({ j, pri });
pq.push(pri);
}
while (!q.empty()) {
int index = q.front().first;
int value = q.front().second;
q.pop();
if (pq.top() == value) {
pq.pop();
++count;
if (index == loc) {
cout << count << endl;
break;
}
}
else q.push({ index, value });
}
}
}
결과 : 성공이닷...! 그러나 기존 코드를 조금 참고했다. 다음엔 더 발전된 모습을...