let's get IT with DAVINA ๐Ÿ’ป

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]Lv2. ์ตœ์†Ÿ๊ฐ’ ๋งŒ๋“ค๊ธฐ ๋ณธ๋ฌธ

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;
}
Comments