"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

오늘이군

[Codility] Triangle (Sorting) 본문

삶../codility

[Codility] Triangle (Sorting)

오늘이군 2018. 10. 2. 18:11
반응형

Triangle

주어진 배열에 대해 삼각형이 존재하면 1을 반환하고 그렇지 않으면 0을 반환합니다.

A [P] + A [Q] > A [R],
A [Q] + A [R] > A [P],
A [R] + A [P] > A [Q]. 조건을 만족합니다.

예를 들어, 배열 A = {10,2,5,1,8,20} 인 경우
배열A 요소 중 10 5 8 (P:5, Q:8, R:10) 은
5 + 8 > 10
8 + 10 > 5
10 + 5 > 8 조건을 만족하므로 삼각형이 성립 되어 1을 반환하면 됩니다.

조금 어려울 듯 싶어 밑에 흰색 글자로 힌트를 드리오니 정 안되겠다 싶으실 때 참고하시기 바랍니다.


중학교 수학 시간에 배웠던
"삼각형의 두 변의 길이의 합은 나머지 한변의 길이보다 크다."
을 떠올리면 됩니다.

즉, 세변이 4, 6, 10 이라고 가정을 하면
10을 밑변에 두고 4 와 6으로 삼각형을 만들려고 하면
밑변에 다른 두 선이 붙어 버려서 삼각형이 성립되지 않습니다.

a(4) b(6)
&&&&@@@@@@
%%%%%%%%%%
c (10)

그러므로 주어진 배열을 정렬을 해서 A[i] + A[i+1] > A[i+2] 가 성립이 되는 경우 1을 반환하면 됩니다.




반응형

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
Comments