DEV_IN/λ¬Έμ νμ΄
[νλ‘κ·Έλλ¨Έμ€]Lv2. μ΅μκ° λ§λ€κΈ°
λ€λΉμΉμ½λπ
2023. 3. 21. 15:02
βλ¬Έμ μ€λͺ
κΈΈμ΄κ° κ°μ λ°°μ΄ A, B λκ°κ° μμ΅λλ€. κ° λ°°μ΄μ μμ°μλ‘ μ΄λ£¨μ΄μ Έ μμ΅λλ€.λ°°μ΄ A, Bμμ κ°κ° ν κ°μ μ«μλ₯Ό λ½μ λ μλ₯Ό κ³±ν©λλ€. μ΄λ¬ν κ³Όμ μ λ°°μ΄μ κΈΈμ΄λ§νΌ λ°λ³΅νλ©°, λ μλ₯Ό κ³±ν κ°μ λμ νμ¬ λν©λλ€. μ΄λ μ΅μ’ μ μΌλ‘ λμ λ κ°μ΄ μ΅μκ° λλλ‘ λ§λλ κ²μ΄ λͺ©νμ λλ€. (λ¨, κ° λ°°μ΄μμ kλ²μ§Έ μ«μλ₯Ό λ½μλ€λ©΄ λ€μμ kλ²μ§Έ μ«μλ λ€μ λ½μ μ μμ΅λλ€.)
μλ₯Ό λ€μ΄ A = [1, 4, 2] , B = [5, 4, 4] λΌλ©΄
- Aμμ 첫λ²μ§Έ μ«μμΈ 1, Bμμ 첫λ²μ§Έ μ«μμΈ 5λ₯Ό λ½μ κ³±νμ¬ λν©λλ€. (λμ λ κ° : 0 + 5(1x5) = 5)
- Aμμ λλ²μ§Έ μ«μμΈ 4, Bμμ μΈλ²μ§Έ μ«μμΈ 4λ₯Ό λ½μ κ³±νμ¬ λν©λλ€. (λμ λ κ° : 5 + 16(4x4) = 21)
- Aμμ μΈλ²μ§Έ μ«μμΈ 2, Bμμ λλ²μ§Έ μ«μμΈ 4λ₯Ό λ½μ κ³±νμ¬ λν©λλ€. (λμ λ κ° : 21 + 8(2x4) = 29)
μ¦, μ΄ κ²½μ°κ° μ΅μκ° λλ―λ‘ 29λ₯Ό return ν©λλ€.
λ°°μ΄ A, Bκ° μ£Όμ΄μ§ λ μ΅μ’ μ μΌλ‘ λμ λ μ΅μκ°μ return νλ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ.
π« μ νμ¬ν
- λ°°μ΄ A, Bμ ν¬κΈ° : 1,000 μ΄νμ μμ°μ
- λ°°μ΄ A, Bμ μμμ ν¬κΈ° : 1,000 μ΄νμ μμ°μ
ποΈ μ μΆλ ₯ μ
A | B | answer |
[1, 4, 2] | [5, 4, 4] | 29 |
[1,2] | [3,4] | 10 |
βοΈλΉλ's νμ΄
μΌλ¨ λ μλ₯Ό κ³±ν λμ ν©μ΄ μ΅μκ°μ΄ λλ €λ©΄ νλλ μ€λ¦μ°¨μμΌλ‘, νλλ λ΄λ¦Όμ°¨μμΌλ‘ μ λ ¬νμ¬ μ΅μκ°*μ΅λκ°μΌλ‘ λ°λ‘ λ¬Άμ΄ κ³μ°νλ©΄ λλ€λ λ‘μ§μ λ μ¬λλ€.
μ΄ ν, λ°λ³΅λ¬Έμ λκ°λ₯Ό λλ €μ λ λ°°μ΄μ κ°λ€μ κ³μ°νλ €κ³ νλ€. κ·Έλ κ² νλ λͺ¨λ μμλ₯Ό λ€ λλ©° μ€λ³΅μ μΌλ‘ λμ κ³μ°μ΄ λμ΄ λ°λ³΅λ¬Έμ νλ²μΌλ‘ λ°κΏμ ν΄κ²°νλ€.
function solution(A, B) {
let arr1 = A.sort((a, b) => a - b); //[1,2,4] [1,2] μ€λ¦μ°¨μ
let arr2 = B.sort((a, b) => b - a); //[5,4,4] [4,3] λ΄λ¦Όμ°¨μ
let res = 0;
for (let i = 0; i < arr1.length; i++) {
res = res + arr1[i] * arr2[i];
}
return res;
}