https://school.programmers.co.kr/learn/courses/30/lessons/42747
function solution(citations) {
var answer = 0;
// 내림차순 정렬
// h의 citations[i] 가 h의 citations[i]보다 크거나 같은 논문 수보다 많으면
// h++
citations.sort((a,b)=> b-a);
let h=0;
while(h+1 <= citations[h]) {
h++
}
return h;
}
처음에 h-index를 제대로 이해하지 못했던 것 같다. 테스트 케이스가 하나라서 그것만 생각하다보니 .. 제출했더니 다른 테스트케이스를 우수수 실패했다. 프로그래머스에서 제공해준 힌트도 보니 유의하라고 한다.엣지케이스를 떠올리기 위한 가장 좋은 방법은 문제를 많이 푸는 것이라고도 한다. 🙂
엣지케이스 예시
해당 사진을 보고 h-index의 원리를 이해했다. 출처
내림차순 정렬을 한 후, h가 피인용수보다 작거나 같을때까지 h를 1씩 증가시킨 후 반환한다.