나의 풀이
function solution(citations) {
let thesis = [];
for(let h =0; h<=Math.max(...citations); h++) {
let above = 0;
let below = 0;
for(let j = 0; j<citations.length; j++) {
if(below > h) break;
if(citations[j] >= h) above++;
else if (citations[j] <= h) below++;
}
if(above >= h && below <= h) thesis.push(h);
}
return Math.max(...thesis)
}
다른 사람의 코드
function solution(citations) {
citations = citations.sort(sorting);
var i = 0;
while(i + 1 <= citations[i]){
i++;
}
return i;
function sorting(a, b){
return b - a;
}
}
심플하고 시간도 더 단축되지만 왜 이렇게 되는지 난 전혀 이해가 안된다.