코드
function solution(citations) {
citations = citations.sort((a, b) => b - a);
for (let i = 0; i < citations.length; i++) {
if (i >= citations[i]) return i;
}
return citations.length
}
문제가 이상해서 삽질 한참함
처음 문제대로 쓴 코드
function solution2(citations) {
let H = 0;
citations = citations.sort((a, b) => a - b);
console.log(citations);
for (let i = 0; i < citations.length; i++) {
let overNum = citations.filter((ele) => ele >= citations[i]).length;
if (overNum >= citations[i]) H = overNum;
else return H;
}
}
그런데 문제가 이상해서 찾아보니까
h-index를 구하기 위해서는 배열을 내림차순으로 바꿔야합니다.
그리고 각각의 인덱스와 인덱스에 해당하는 값을 비교해
인덱스가 인덱스에 해당하는 값보다 크거나 같으면 그 값이 h-index입니다.
라고 한다