๋ฌธ์
๊ฐ์ฅ ๊ธด ๊ฐ๋ก ๊ธธ์ด์ ์ธ๋ก ๊ธธ์ด๊ฐ ๊ฐ๊ฐ 80, 70์ด๊ธฐ ๋๋ฌธ์ 80(๊ฐ๋ก) x 70(์ธ๋ก) ํฌ๊ธฐ์ ์ง๊ฐ์ ๋ง๋ค๋ฉด ๋ชจ๋ ๋ช ํจ๋ค์ ์๋ฉํ ์ ์์ต๋๋ค. ํ์ง๋ง 2๋ฒ ๋ช ํจ์ ๊ฐ๋ก๋ก ๋ํ ์๋ฉํ๋ค๋ฉด 80(๊ฐ๋ก) x 50(์ธ๋ก) ํฌ๊ธฐ์ ์ง๊ฐ์ผ๋ก ๋ชจ๋ ๋ช ํจ๋ค์ ์๋ฉํ ์ ์์ต๋๋ค. ์ด๋์ ์ง๊ฐ ํฌ๊ธฐ๋ 4000(=80 x 50)์ ๋๋ค.
๋ชจ๋ ๋ช ํจ์ ๊ฐ๋ก ๊ธธ์ด์ ์ธ๋ก ๊ธธ์ด๋ฅผ ๋ํ๋ด๋ 2์ฐจ์ ๋ฐฐ์ด sizes๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ๋ชจ๋ ๋ช ํจ์ ์๋ฉํ ์ ์๋ ๊ฐ์ฅ ์์ ์ง๊ฐ์ ๋ง๋ค ๋, ์ง๊ฐ์ ํฌ๊ธฐ๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
ํ์ด
๊ฐ๋ก ๊ธธ์ด ์ค์ ๊ฐ์ฅ ๊ธด ๊ฒ, ์ธ๋ก ๊ธธ์ด ์ค์ ๊ฐ์ฅ ๊ธด ๊ฒ์ ๊ณฑํ๊ฒ ์ต์ ์ง๊ฐํฌ๊ธฐ๊ฐ ๋ ์ ์๋ค.
ํ์ง๋ง ์ธ๋ก๊ธธ์ด๊ฐ ๊ฐ์ฅ ํฐ ๋ช ํจ์ด ๊ฐ๋ก๋ก ๋ํ์ ์๋ฉํ ์ ์๊ฒ๋๋ค๋ฉด, ๋ ์์ ์ฌ์ด์ฆ๋ก ๋ง๋ค ์ ์๋ค.
๊ฐ ๋ฐฐ์ด์์ ์์๋ผ๋ฆฌ ๋น๊ตํด์ ํฐ ๊ฐ์ 0๋ฒ์งธ, ์์ ๊ฐ์ 1๋ฒ์งธ ์๋ฆฌ์ ๋ฐฐ์นํ๋ค. ๊ทธ๋ฆฌ๊ณ ํฐ ๊ฐ์ ๋ชจ์์ big์ด๋ผ๋ ๋ฐฐ์ด์ pushํ๊ณ , ์์ ๊ฐ์ small์ด๋ผ๋ ๋ฐฐ์ด์ pushํ๋ค. ๊ฐ์ ๊ฒฝ์ฐ ๊ทธ๋๋ก ๋ฃ๋๋ค. ๊ฐ ๋ฐฐ์ด์์ Math.max() ๋ฉ์๋๋ก ์ฐพ์์ ๊ณฑํ๊ณ answer๋ก ๋ฆฌํดํ๋ค.
์ฝ๋
const solution = (sizes) => {
let answer;
let temp;
let small = [];
let big = [];
for (let i = 0; i < sizes.length; i++) {
if (sizes[i][0] < sizes[i][1]) {
temp = sizes[i][1];
sizes[i][1] = sizes[i][0];
sizes[i][0] = temp;
}
small.push(sizes[i][1]);
big.push(sizes[i][0]);
}
answer = Math.max(...big) * Math.max(...small);
return answer;
}
const sizes = [[60, 50], [30, 70], [60, 30], [80, 40]];
console.log(solution(sizes));
๋ค๋ฅธ ํ์ด
๋งคํ์ ํด์ ์ ๋ ฌ๋ ๋ฐฐ์ด์ ๋ง๋ค๊ณ , ๋ฐ๋ก 0๋ฒ์งธ ์์๋ค๋ง ๋งคํํด์ ์ต๋๊ฐ์ ์ฐพ๊ณ , 1๋ฒ์งธ ์์๋ค๋ง ๋งคํํด์ ์ต๋๊ฐ์ ์ฐพ์์ ๊ณฑํด์ ๋ฆฌํดํ๋ ๋ฐฉ๋ฒ๋ ์์๋ค.
const solution = (sizes) => {
const newSizes = sizes.map(e => e.sort((a, b) => a - b));
return Math.max(...newSizes.map(e => e[0])) * Math.max(...newSizes.map(e => e[1]));
}
const sizes = [[60, 50], [30, 70], [60, 30], [80, 40]];
console.log(solution(sizes));
'๐กAlgorithm > ๋ฌธ์ ํ๊ธฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค - ๋ก๋์ ์ต๊ณ ์์์ ์ต์ ์์ (0) | 2021.10.29 |
---|---|
JS์๊ณ ๋ฆฌ์ฆ | ์์ ํ์ - ์กธ์ ์ ๋ฌผ (0) | 2021.10.27 |
ํ๋ก๊ทธ๋๋จธ์ค | ์์ฃผํ์ง ๋ชปํ ์ ์(ํด์) (0) | 2021.09.25 |
JS์๊ณ ๋ฆฌ์ฆ | ์๋๊ทธ๋จ์ด ๋๋ ๋ถ๋ถ๋ฌธ์์ด์ ๊ฐ์ ๊ตฌํ๊ธฐ (0) | 2021.09.24 |
ํ๋ก๊ทธ๋๋จธ์ค(Level 1) - 2์ฃผ์ฐจ_์ํธํ๊ฐ (0) | 2021.09.23 |