[프로그래머스] lv2. H-Index

Jenny·2023년 4월 29일
0

ProblemSolving

목록 보기
6/14
post-thumbnail

문제

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씩 증가시킨 후 반환한다.

profile
Developer로의 여정

0개의 댓글