728x90
반응형
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
📌 접근 방식
문제가 완전……..이상해서 이해하다가 시간 다 잡아먹고 결국 검색해서 문제 이해했오요 🥲🥺
단순히 “어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index입니다.” 라고 설명되어 있어서, 주어진 citations 배열값을 이용해서 구하는 것인줄 알았습니다….
💡 결론은
👉🏻 h의 기준은 그냥 0~10000 → 배열의 값을 이용하는 것이 아님
ex) [1, 10, 11]의 경우 답은 2임
PASS CODE
import java.util.*;
class Solution {
public int solution(int[] citations) {
int answer = -1;
Arrays.sort(citations);
// [1, 10, 11] -> 2
int j=0;
while(true) {
int cnt = 0;
for(int i=0; i<citations.length; i++) {
if(citations[i] >= j) {
cnt++;
}
}
if(cnt < j) {
answer = j-1;
break;
}
j++;
}
if(answer == -1) {
answer = citations.length;
}
return answer;
}
}

728x90
반응형
'Coding Test > Programmers' 카테고리의 다른 글
[SQL][Programmers] 성분으로 구분한 아이스크림 총 주문량 (0) | 2025.03.13 |
---|---|
[Java][Programmers] 의상 (0) | 2025.03.13 |
[Java][Programmers] 행렬의 곱셈 (2) | 2025.03.13 |
[Java][Programmers] n^2 배열 자르기 (0) | 2025.03.13 |
[Java][Programmers] 할인 행사 (0) | 2025.03.12 |