[SOFTEER] 우물 안 개구리

less than 1 minute read

문제출처

문제접근

  • 회원별 들 수 있는 역기의 무게를 배열에 담는다.
  • 친분관계에 있는 두 회원의 역기의 무게를 비교하고 최고 회원을 선별하는 과정을 반복한다.

구현

#include <iostream>
#include <vector>

using namespace std;

int main(int argc, char** argv)
{
	int n, m;
	scanf("%d %d", &n, &m);
	vector<int> power(n+1); // 회원별 역기의 무게
	for(int i=1; i<=n; i++)
		scanf("%d", &power[i]);
	
	vector<int> best(n+1, 1); // 본인이 최고라고 생각하는 회원들
	int a, b;
	for(int i=0; i<m; i++){
		scanf("%d %d", &a, &b);
		if(power[a]>power[b]) best[b]=0;
		else if(power[a]<power[b]) best[a]=0;
		else {
			best[a]=0; best[b]=0;
		}
	}

	int ans=0;
	for(int i=1; i<=n; i++){
		if(best[i]) ans++;
	}
	cout << ans << endl;

	return 0;
}

Categories:

Updated:

Leave a comment