Develop/백준 코딩테스트

백준 코딩테스트 1946 신입 사원 자바스크립트 node.js

codeGray 2022. 7. 12. 13:17
반응형

 

정답

let input= require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');

for(let i=1; i < input.length;){
    let section = Number(input[i]);
    let arr = input.slice(i+1, i+1+section).map( i=> i.split(' ').map(i => +i));
    sol(arr);
    i += section + 1;
}


function sol(arr){
    arr =  arr.sort((a,b) => a[0]-b[0]);
    let result = 1;
    let minScore = arr[0][1];
    for(let i=1; i < arr.length; i++){
        if(minScore > arr[i][1]){
            result += +1;
            minScore = arr[i][1];
        }
    }
    console.log(result);
}

 

풀이

문제가 이해하기 어려워서 정답률이 낮은 것 같다.

서류나 면접 둘 중 하나가 다른 사람보다 순위가 높으면 합격시키는 것인데

이 다른사람의 기준이 명확하지 않다.

 

정답은 

기존에 합격한 사람보다 높은 순위어야 하는 것이다.

 

우선 서류로 정렬하고나면 그 첫번쨰 1등은 무조건 합격인 것이고

이 1등의 면접점수가 기준이 되는 것이다.

 

그럼 서류에서 2등한 사람은 1등한 사람보다 면접 점수가 높아야 합격하는 것이고

나머지 3,4,5 등 도 마찬가지인 것이다.

반응형