- Published on
Codility - Triangle
- Author

- Name
- yceffort
Triangle
๋ฌธ์
๊ธธ์ด N์ ๋ฐฐ์ด A๊ฐ ์ฃผ์ด์ง๋ค.
(P, Q, R)์ ์ผ๊ฐํ์ด ๋ ์ ์๋๋ฐ, ์ด๋
- 0 โค P < Q < R < N
- A[P] + A[Q] > A[R]
- A[Q] + A[R] > A[P]
- A[R] + A[P] > A[Q]
๋ผ๋ ์กฐ๊ฑด์ ๋ง์กฑ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
A[0] = 10
A[1] = 2
A[2] = 5
A[3] = 1
A[4] = 8
A[5] = 20
์ 0, 2, 4 (10, 5, 8)๋ก ์ผ๊ฐํ์ ๋ง๋ค ์ ์์ผ๋ฏ๋ก 1์ ๋ฆฌํดํ๋ค. ๊ทธ๋ฌ๋ ๋ง๋ค ์ ์๋ค๋ฉด 0์ ๋ฆฌํดํ๋ค.
์ฃผ์ด์ง A ๋ฐฐ์ด์์ ์ผ๊ฐํ์ ๋ง๋ค ์ ์๋ 3๊ฐ์ ์กฐํฉ์ด ์กด์ฌํ๋์ง ํ์ธํด์, ์กด์ฌํ๋ค๋ฉด 1์, ์๋๋ผ๋ฉด 0์ ๋ฆฌํดํด๋ผ.
ํ์ด
function solution(A) {
const sorted = A.sort((a, b) => a - b)
for (let i = 0; i < sorted.length - 2; i++) {
const a = sorted[i]
const b = sorted[i + 1]
const c = sorted[i + 2]
if (a + b > c && b + c > a && a + c > b) {
return 1
}
}
return 0
}