728x90
반응형
[문제]
배열에서 3개의 수를 뽑아 어떤 2개의 수의 합이 나머지 1개의 수보다 큰 조합이 있는지 찾는 문제
[코드]
시간복잡도 : O(N*log(N))
정렬 후에는 A[idx]+A[idx+2] > A[idx+1], A[idx+1]+A[idx+2] > A[idx] 가 당연한 것을 활용
예) [1, 1, 1] -> 1+1>1 / [1, 2, 3] -> 1+3 > 2, 2+3>1
def solution(A):
# write your code in Python 3.6
if(len(A)<3) :
return 0
A.sort()
for idx, value in enumerate(A[0:len(A)-2]) :
if A[idx] + A[idx+1] > A[idx+2] :
return 1
return 0
728x90
'기타 > Codility' 카테고리의 다른 글
[Easy] PermMissingElem (0) | 2022.06.07 |
---|---|
[Easy] OddOccurencesInArray (0) | 2022.06.07 |
[Easy] MaxNonoverlappingSegments (0) | 2022.06.07 |
[Elementary] ParkingBill (0) | 2022.06.07 |
[Easy] ChocolatesByNumbers (0) | 2022.06.06 |