본문 바로가기
코딩테스트

[1일1코👨🏻‍💻] Lv.2 H-index[정렬].js - 프로그래머스

by Jacob93 2020. 9. 9.

20.09.08

출처 : 프로그래머스

📝문제

https://programmers.co.kr/learn/courses/30/lessons/42747

✏️해답

function solution(citations) {
    var answer = 0;

    citations.sort((a, b) => b - a);

    for(let i = 0; i < citations.length; i++) {
        if(citations[i] > i) answer++;
        else break;
    }

    return answer;
}

입출력 예

회고🧐

문제가 이상했다. 이해하기 어려웠음. 내가 푼 코드로 테스트는 다 맞췄는데, 채점하면 이상하게 다틀리게 나온다. 그래도 정렬문제에서 정렬에 초점을 맞췄음.

function solution(citations) {
    var answer = 0;

    var result=[];
    var lower=[];
    citations.sort((a,b)=>a-b);
    var cnt=0;
    var max;
    console.log(citations);
    for(var i=0;i<citations.length;i++){
        for(var j=0;j<citations.length;j++){
            if(citations[i]<=citations[j]){
                cnt++;
            }
        }
        result.push(cnt);
        cnt=0;
    }
    console.log(result);
    cnt = 0;
    for(var i=1;i<=citations.length;i++){
        if(citations[i-1]<=result[i-1]){
            lower.push(citations[i-1]);   
        }
    }
    console.log('lower  : '+lower);

    for(var i=0;i<citations.length;i++){
      if(citations.length-result[i]<=result[i]){
        max = citations[i];
      }
    }
    console.log('answer : '+max);
    answer=max;
    return answer;
}

댓글