Algorithm/(Java) PS

[Programmers] H-Index

noahkim_ 2023. 10. 1. 01:47

난이도 : Level 2

문제링크

  • H-Index : 논문 n편 중, h번 이상 인용된 논문이 h편 이상,나머지 논문이 h번 이하 인용시, h의 최댓값
  • 논문의 인용 횟수를 담은 배열이 주어질 때, H-Index를 리턴하라

 

해설

1. H-Index 의 범위는 1 ~ 전체 논문수 입니다.

2. H가 가장 큰 숫자부터 작은수까지 조건을 만족하는지 확인합니다.

public int solution(int[] citations) {        
    int answer = 0, size = citations.length;
    Arrays.sort(citations);

    for (int i = 0; i < size; i++) {
        int h = size - i;
        if (citations[i] >= h) {
            return h;
        }
    }

    return answer;
}
  • 논문을 오름차순으로 정렬합니다.
  • 확인하고자 하는 h가 h-index인지 확인하기 위해
    • 논문 인용수가 h번 이상인지 확인합니다.
    • 정렬하였으므로 논문이 h편 이상,나머지 논문이 h번 이하 인용 조건은 자동으로 확인됩니다.

'Algorithm > (Java) PS' 카테고리의 다른 글

[BOJ] ABCDE  (4) 2024.02.22
[Programmers] 더 맵게  (2) 2023.10.01
[Programmers] 이중우선순위큐  (0) 2023.10.01
[Programmers] 디스크 컨트롤러  (0) 2023.09.30
[Programmers] 순위  (0) 2023.09.29