프로그래머스 H-Index

문제

1

문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/42747

풀이

정렬후 H-Index에 해당하는 값보다 인용횟수가 많은 논문 적은 논문 숫자를 체크하고 가장큰 값이 리턴되도록 갱신시켰다.

#include <string>
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;

int solution(vector<int> citations) 
{
	int answer = 0;

	sort(citations.begin(), citations.end());

	for (int i = 1; i <= citations.size(); i++)
	{
		int high = 0;
		int low = 0;
		for (int j = 0; j < citations.size(); j++)
		{
			if (citations[j] >= i)
			{
				high++;
			}
			else
			{
				low++;
			}
		}
		if (high>=i)
		{
			if (low<=i)
			{
				answer = i;
			}
		}
	}

	return answer;

}

int main()
{
	vector<int> v;
	v.push_back(3);
	v.push_back(0);
	v.push_back(6);
	v.push_back(1);
	v.push_back(5);

	cout << solution(v) << endl;
}

댓글남기기