1. 문제
https://programmers.co.kr/learn/courses/30/lessons/42747
코딩테스트 연습 - H-Index
H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표
programmers.co.kr
2. 나의 풀이
import java.util.*;
class Solution {
public int solution(int[] citations) {
int answer = 0;
Integer [] citations_copy = new Integer [citations.length];
int i = 0;
for(int imsi : citations) citations_copy[i++] = imsi;
Arrays.sort(citations_copy, Collections.reverseOrder());
int imsi = 0;
for(i = 0; i < citations_copy.length; i = i + 1) {
if(citations_copy[i] >= i + 1) {
imsi = i + 1;
}else if(citations_copy[i] < i + 1) {
break;
}
}
answer = imsi;
return answer;
}
}
3. 다른 사람 풀이
import java.util.*;
class Solution {
public int solution(int[] citations) {
Arrays.sort(citations);
int max = 0;
for(int i = citations.length-1; i > -1; i--){
int min = (int)Math.min(citations[i], citations.length - i);
if(max < min) max = min;
}
return max;
}
}
'알고리즘 공부 > 프로그래머스' 카테고리의 다른 글
(Java)프로그래머스 코딩테스트 연습 - 완전탐색 - 카펫 (0) | 2020.10.30 |
---|---|
(Java)프로그래머스 코딩테스트 연습 - 깊이/너비 우선 탐색(DFS/BFS) - 타겟 넘버 (0) | 2020.10.30 |
(Java)프로그래머스 코딩테스트 연습 - 해시 - 위장 (0) | 2020.10.28 |
(Java)프로그래머스 코딩테스트 연습 - 탐욕법(Greedy) - 구명보트 (0) | 2020.10.24 |
(Java)프로그래머스 코딩테스트 연습 - 해시 - 전화번호 목록 (0) | 2020.10.21 |