๐ ๋ฌธ์
์ ๋ถ ์ธ ๊ฐ๋ก ์ผ๊ฐํ์ ๋ง๋ค๊ธฐ ์ํด์๋ ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ ๋ง์กฑํด์ผ ํฉ๋๋ค.
๊ฐ์ฅ ๊ธด ๋ณ์ ๊ธธ์ด๋ ๋ค๋ฅธ ๋ ๋ณ์ ๊ธธ์ด์ ํฉ๋ณด๋ค ์์์ผ ํฉ๋๋ค.
์ผ๊ฐํ์ ๋ ๋ณ์ ๊ธธ์ด๊ฐ ๋ด๊ธด ๋ฐฐ์ด sides์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ๋๋จธ์ง ํ ๋ณ์ด ๋ ์ ์๋ ์ ์์ ๊ฐ์๋ฅผ returnํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
๐ ์ ํ์ฌํญ
- sides์ ์์๋ ์์ฐ์์ ๋๋ค.
- sides์ ๊ธธ์ด๋ 2์ ๋๋ค.
- 1 ≤ sides์ ์์ ≤ 1,000
๐ ์ ์ถ๋ ฅ ์
sides result
[1, 2] 1
[3, 6] 5
[11, 7] 13
๐ ์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- ๋ ๋ณ์ด 1, 2 ์ธ ๊ฒฝ์ฐ ์ผ๊ฐํ์ ์์ฑ์ํค๋ ค๋ฉด ๋๋จธ์ง ํ ๋ณ์ด 2์ฌ์ผ ํฉ๋๋ค. ๋ฐ๋ผ์ 1์ returnํฉ๋๋ค.
์ ์ถ๋ ฅ ์ #2
- ๊ฐ์ฅ ๊ธด ๋ณ์ด 6์ธ ๊ฒฝ์ฐ
๋ ์ ์๋ ๋๋จธ์ง ํ ๋ณ์ 4, 5, 6 ๋ก 3๊ฐ์ ๋๋ค.
๋๋จธ์ง ํ ๋ณ์ด ๊ฐ์ฅ ๊ธด ๋ณ์ธ ๊ฒฝ์ฐ
๋ ์ ์๋ ํ ๋ณ์ 7, 8 ๋ก 2๊ฐ์ ๋๋ค.
๋ฐ๋ผ์ 3 + 2 = 5๋ฅผ returnํฉ๋๋ค.
์ ์ถ๋ ฅ ์ #3
- ๊ฐ์ฅ ๊ธด ๋ณ์ด 11์ธ ๊ฒฝ์ฐ
๋ ์ ์๋ ๋๋จธ์ง ํ ๋ณ์ 5, 6, 7, 8, 9, 10, 11 ๋ก 7๊ฐ์ ๋๋ค.
๋๋จธ์ง ํ ๋ณ์ด ๊ฐ์ฅ ๊ธด ๋ณ์ธ ๊ฒฝ์ฐ
๋ ์ ์๋ ํ ๋ณ์ 12, 13, 14, 15, 16, 17 ๋ก 6๊ฐ์ ๋๋ค.
๋ฐ๋ผ์ 7 + 6 = 13์ returnํฉ๋๋ค.
๐ง ํ์ด
function solution(sides) {
// ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
sides.sort((a, b) => a - b);
// ๊ฐ์ฅ ๊ธด ๋ณ์ ๊ธธ์ด๊ฐ sides[0] + sides[1]๋ณด๋ค ์์์ผ ํ ๋์ ์ต์ ์ ์
let h = sides[0] + sides[1] - 1;
// ๊ฐ์ฅ ๊ธด ๋ณ์ ๊ธธ์ด๊ฐ sides[1]์ผ ๋์ ์ต์ ์ ์,
let l = sides[1] - sides[0] + 1;
// l <= x <= h๊ธฐ ๋๋ฌธ์, h - l + 1
return h - l + 1;
}
'๐งฉ Algorithm > ๐ง JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ์ฃผ์ ์ซ์ 3 (0) | 2023.04.18 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ์ธ๊ณ์ด ์ฌ์ (1) | 2023.04.17 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ ์ง๋ (0) | 2023.04.17 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์จ์ด์๋ ์ซ์์ ๋ง์ (2) (0) | 2023.04.17 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๋คํญ์ ๋ํ๊ธฐ (0) | 2023.04.17 |