본문 바로가기

Algorithm/Sorting

(C++) - 프로그래머스(고득점 kit - 정렬) : H-index 답

반응형

programmers.co.kr/learn/courses/30/lessons/42747

 

코딩테스트 연습 - H-Index

H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표

programmers.co.kr

모든 경우를 탐색하는 brute force로 풀었습니다.

 

풀이방법

 논문의 수는 최대 1000까지이므로 h-index는 1000까지가 최대입니다.

 1000까지 h-index를 증가시키며 가장 큰 h-index를 찾아주시면 됩니다.

 

Code

#include <string>
#include <vector>

using namespace std;

int solution(vector<int> citations) {
    int answer = 0;
    int size = citations.size();
    for(int i = 1; i <= 1000; i++){
        int cnt = 0;
        for(int j = 0; j < size; j++){
            if(citations[j] >= i) cnt++;
        }
        if(cnt >= i) answer = i;
    }
    return answer;
}