말랑한 하루
[Programmers] 숫자 게임 (Lv 3, JavaScript) 본문
반응형
[ 개요 ]
두개의 값을 비교하는 과정에서, 한측의 값이 고정되어 있으면
다른측에서는 모든 경우에 대해 대처할 수 있음을 가정으로 진행할 수 있다.
즉, A에 대해 B는 적재 적소에 원하는 값을 배치할 수 있는 이야기다.
결론적으로, B가 A에 대해 승리하기 위한 요소가 필요하므로 B와 A에 대해 오름, 내림차순하여
A의 순서에 따라 B의 MAX값을 비교하여 큰경우 B를 다음 수로 넘기며 진행하면 된다.
[ 소스 코드 ]
function solution(A, B) {
let answer = 0;
A.sort((o1, o2) => o2 - o1);
B.sort((o1, o2) => o1 - o2);
A.forEach((a) => {
if (a < B.at(-1)) {
answer++;
B.pop();
}
})
return answer;
}
[ 코드 분석 ]
그러나 왜 B를 내림차순으로 변경하고 B[0]과 B.shilft()를 사용했을 때, 효율성에서 광탈하는 이유를 모르겠다.
반응형
'문제풀이 > Programmers' 카테고리의 다른 글
[Programmers] 섬 연결하기 (Lv 3, JavaScript) (0) | 2022.12.14 |
---|---|
[Programmers] 단속카메라 (Lv 3, JavaScript) (0) | 2022.12.10 |
[Programmers] 최고의 집합 (Lv 3, JavaScript) (0) | 2022.12.09 |
[Programmers] 단어 변환 (Lv 3, JavaScript) (0) | 2022.12.09 |
[Programmers] 야근 지수 (Lv 3, JavaScript) (0) | 2022.12.08 |
Comments