https://programmers.co.kr/learn/courses/30/lessons/12941
function solution(A,B){
let sum=0;
A=A.sort((a, b)=>a-b); //오름차순
B=B.sort((a, b)=>b-a); //내림차순
for(let i=0; i<A.length; i++){
sum=sum+(A[i]*B[i]);
}
return sum;
}
function solution(A,B){
let sum=0;
A=A.sort((a, b)=>a-b); //오름차순
B=B.sort((a, b)=>b-a); //내림차순
return A.reduce((total, val, idx) => total + val * B[idx], 0)
}
누적값이라서 reduce를 어떻게 사용해야할지, 고민하다가 못풀었는데 좋은 풀이가 있어서 가져왔다.
reduce mdn을 참고해보니, 인자가 누산기, 현재값, 현재인덱스, 원본배열이다. 이 중 누산기, 현재값, 현재인덱스를 넣어서 문제를 풀 수 있었다. 인자와 매개변수를 잘 구분해서 보면 문서를 더 쉽게 이해할 수 있을 것 같다.
10/27
'큰수*작은수'가 '큰수*큰수'보다는 더 작다! 이 원리를 잘 기억하자