백준_1966

Yesl·2022년 9월 18일
0

백준

목록 보기
1/11
#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 });

		}
	}

}


결과 : 성공이닷...! 그러나 기존 코드를 조금 참고했다. 다음엔 더 발전된 모습을...

profile
Studying for "Good Health & Well-Being"...

0개의 댓글