문제링크
- H-Index는 과학자의 생산성과 영향력을 나타내는 지표
- H-Index : 발표한 논문 n편 중 h번 이상 인용된 논문이 h번 이상일 경우 h의 최댓값
- 논문 인용 횟수를 담은 배열 citations
- 논문 중 h번 이상 인용된 논문이 h편이어야 함.
function solution(citations) {
const length = citations.length;
citations.sort((a,b)=>b-a)
for(let i = 0; i<length; i++){
if(i+1 > citations[i]){
return i;
}
}
}
- 9번 테스트 케이스에서 자꾸 실패
배열의 최솟값(인용된 횟수)보다 배열의 길이(발표한 논문 수)가 더 작은 경우!
ex) [12, 20] : 이 경우 h는 2가 되어야 함
최종 통과 답안
function solution(citations) {
const length = citations.length;
citations.sort((a,b)=>b-a)
for(let i = 0; i<length; i++){
if(citations[length-1] > length) return length;
if(i+1 > citations[i]){
return i;
}
}
}
다른 사람의 풀이
const solution = (citations) =>
citations.sort((a, b) => b - a).filter((el, idx) => el >= idx + 1).length;