Codility - Triangle
IT 개발/코딩테스트
2022. 11. 27. 18:24
https://app.codility.com/c/run/trainingPYK4VE-WPM/
public int solution(int[] A) {
int len = A.length;
if (len < 3) {
return 0;
}
Arrays.sort(A);
for (int i = 0; i < len - 2; i++) {
int P = A[i], Q = A[i + 1], R = A[i + 2];
if (Q > R - P) {
return 1;
}
}
return 0;
}
이번 문제의 corner case는 overflow(참고 : https://stackoverflow.com/questions/44912099/triangle-determine-if-an-array-includes-a-triangular-triplet-codility)였다.
역시나 이번 문제도 결과적으론 어려운 것이 아니었으나.. 처음에 방향성 및 문제를 꼬아서 생각해서 생각보다 시간이 많이 걸렸다.
문제를 추측하지 말고 컴팩트하게 푸는 연습을 해야겠다.
- 문자열 정렬, 길이가 3 미만일 경우 return 0까지는 잘 찾았는데 정렬을 한 상태에서 P+Q>R만 비교하면 되는데 너무 깊게 생각했다.. 문제 및 표현식에 답이 있는 것을 잊지말자.
** CS에 대한 공부를 해야겠다고 더더욱 느꼈다.
반응형
'IT 개발 > 코딩테스트' 카테고리의 다른 글
Codility - CountDiv (0) | 2022.11.26 |
---|