• Home

My Codegate

  • Home

프로그래머스 H-Index 자바 문제풀이

2023/12/12 Posted by Codegate Java No Comments

문제 링크

문제를 풀기 앞서, H-Index가 정확히 뭔지 모르는 상태에서 문제를 푸려고 하면 대충 맞는 것 같아 보이지만 다양한 케이스에서 틀리는 경우가 계속 생기는데

H-Index는 최소 ‘H’번 이상 인용된 논문이 ‘H’편 있어야 하는데 예제로 보자면
3, 0, 6, 1, 5 순으로 인용되었다면 3
0, 1, 2 순으로 인용되었다면 1
7, 7, 7 순으로 인용되었다면 3

이 나와야 하는데

public class Hindex {

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

    for (int i = 0; i < citations.length; i++) {
      int h = citations.length - i;
      if (citations[i] >= h) {
        answer = h;
        break;
      }
    }

    return answer;
  }

  public static void main(String[] args) {
    int[] arr = {1, 2, 3};
    System.out.println(solution(arr));
  }

}

문제를 풀어보자면 먼저 int[] 배열을 받으면 정렬 시킨 후 배열 만큼 돌려주면서 나올 수 있는 최대값을 h로 가정하면서 1씩 줄여가되 배열의 값이 h 이상이면 해당 값이 바로 H-Index 이므로 중단시킨 후 h를 반환해주면 끝이다.

No Comments
0

Leave a Reply Cancel Reply

Introduction

My Codegate

Latest Posts

  • Google Search Console API 연동방법
  • 인텔리제이 Gradle Dependency 최신 버전 보는 방법
  • Wallet-Tracker 개발일지
  • Moralis API 자바로 호출방법
  • IntelliJ Commit 후 Push 따로 하는 방법

Categories

  • My Project (4)
  • Java (42)
  • Algorithm (161)
    • Java (152)
    • Algorithm Knowledge (3)
    • Algorithm site usage (6)
  • Vue.js (1)
  • Spring (4)
  • Docker (2)
  • IntelliJ (20)
  • Uncategorized (7)

Recent Comments

  • Codegate on Hello world!
  • A WordPress Commenter on Hello world!

© 2025 — mycodegate.com

Prev Next