๐ฑ ํ๋ก๊ทธ๋๋จธ์ค 1๋จ๊ณ : ์์ ๋ํ๊ธฐ ๐ฑ
๐ ๋ฌธ์ ์ค๋ช ๐
์ ์๋ค์ ์ ๋๊ฐ์ ์ฐจ๋ก๋๋ก ๋ด์ ์ ์ ๋ฐฐ์ด absolutes์ ์ด ์ ์๋ค์ ๋ถํธ๋ฅผ ์ฐจ๋ก๋๋ก ๋ด์ ๋ถ๋ฆฌ์ธ ๋ฐฐ์ด signs๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ์ค์ ์ ์๋ค์ ํฉ์ ๊ตฌํ์ฌ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
๐งธ ์ ํ ์ฌํญ ๐งธ
absolutes์ ๊ธธ์ด๋ 1 ์ด์ 1,000 ์ดํ์
๋๋ค. absolutes์ ๋ชจ๋ ์๋ ๊ฐ๊ฐ 1 ์ด์ 1,000 ์ดํ์
๋๋ค.
signs์ ๊ธธ์ด๋ absolutes์ ๊ธธ์ด์ ๊ฐ์ต๋๋ค. signs[i] ๊ฐ ์ฐธ์ด๋ฉด absolutes[i] ์ ์ค์ ์ ์๊ฐ ์์์์, ๊ทธ๋ ์ง ์์ผ๋ฉด ์์์์ ์๋ฏธํฉ๋๋ค.
function solution(absolutes, signs) {
let answer = 0;
for(let i=0; i<absolutes.length; i++){
signs[i]?answer+=absolutes[i] : answer-=absolutes[i]
}
return answer;
}
// ์
๋ ฅ๊ฐ : [4,7,12] [true,false,true]์ผ ๊ฒฝ์ฐ 9๋ฅผ ๋ฐํ.
๐งธ ๋ฌธ์ ํ์ด ๐งธ
๋ฐ๋ณต๋ฌธ์ ํตํด ์ซ์ ๋ฐฐ์ด์ ๊ธธ์ด ๋งํผ ๋ฐ๋ณต ์์ผ์ค๋๋ค. ๊ทธ ํ ์ฐธ๊ฑฐ์ง ๊ฐ์ด ๋ค์ด๊ฐ ๋ฐฐ์ด์ธ ์ด์ฉํ์ฌ ์กฐ๊ฑด ์ผํญ๋ฌธ์ ๋ง๋ค์ด ์ค๋๋ค. ๋ง์ฝ ๊ฐ์ด true๋ผ๋ฉด +๋ฅผ ์๋๋ผ๋ฉด -๋ฅผ ํด์ฃผ์ด์ ์ด ๊ฐ์ ๋ฐํ์ํต๋๋ค.
๐งธ ๋ค๋ฅธ ์ฌ๋์ ํ์ด ๐งธ
function solution(absolutes, signs) {
return absolutes.reduce((acc, val, i) => acc + (val * (signs[i] ? 1 : -1)), 0);
}
reduce ๋ฉ์๋๋ฅผ ํตํด ํ ๋ฒ์ ์์ฑํ์์ต๋๋ค..!
reduce() : ๋ฐฐ์ด ๋ฉ์๋๋ก acc๋ ์ฝ๋ฐฑ์ ๋ฐํ๊ฐ์ ๋์ ํ๊ณ val์ ํ์ฌ ๊ฐ, i๋ ํ์ฌ ์ธ๋ฑ์ค๋ฅผ ๋ปํฉ๋๋ค.
'์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค 1๋จ๊ณ : ์ ์ ์ ๊ณฑ๊ทผ ํ๋ณ (1) | 2022.11.17 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค 1๋จ๊ณ : ํ์ค๋ ์ (1) | 2022.11.16 |
ํ๋ก๊ทธ๋๋จธ์ค 1๋จ๊ณ : x๋งํผ ๊ฐ๊ฒฉ์ด ์๋ n๊ฐ์ ์ซ์ (1) | 2022.11.14 |
ํ๋ก๊ทธ๋๋จธ์ค 1๋จ๊ณ : ๋ ์ ์ ์ฌ์ด์ ํฉ (1) | 2022.11.14 |
ํ๋ก๊ทธ๋๋จธ์ค 1๋จ๊ณ : ์ฝ๋ผ์ธ ์ถ์ธก (1) | 2022.11.14 |
๋๊ธ