본문 바로가기

IT/알고리즘

[코딜리티] - Lesson 6. Triangle

728x90
SMALL

안녕하세요 남갯입니다.





앞에 두수의 합이 뒤에꺼의 값보다 크면 OK

int Max값까지의 범위여서 생각없이 더할경우 오버플로우가 나게된다.

첫번째수가 0보다 크고 다음수가 맥스값이면 마지막이 맥스값이여도 크다.


import java.util.Arrays;

public class Triangle {

public int solution(int[] A) {
// write your code in Java SE 8
int result = 0;

Arrays.sort(A);
for (int i = 0; i < A.length - 2; i++) {
for (int j = i + 2; j < A.length; j++) {
if ((A[i] > 0 && A[i + 1] == Integer.MAX_VALUE) || (A[i] + A[i + 1] > A[j])){
return 1;
} else{
break;
}
}
}

return result;
}
}




https://app.codility.com/demo/results/trainingFB7SZQ-3YQ/

728x90
LIST