[codility] sorting: MaxProduct of three

728x90
반응형

음수 경우를 생각하면서 풀어야 되는 문제 

 

1. 가장 작은 수들이 음수인 경우 가장 작은 음수 2개 (절대값은 크다) * 가장 큰 원소를 곱할 경우 가장 큰 원소가 나올 수 있다. 가장 큰 원소도 음수인 경우는 자연스럽게 작은 수가 된다 

 

2. 한 경우는 모든 것이 양수이고 세 개 곱한 것이 가장 큰 수인 경우이다 

 

def solution(A):
    # write your code in Python 3.6
    A.sort();
    a=A[-1]*A[-2]*A[-3]
    b=A[0]*A[1]*A[-1]
    
    if a>b: return a 
    else: return b
 

728x90
반응형

'codility' 카테고리의 다른 글

[codility] Prefix Sums - MinAvgTwoSlice (python)  (0) 2020.10.28
[codility] Distinct (python)  (0) 2020.10.14
[codility] Counting Elements (python)  (0) 2020.10.14
[codility] max counters (python)  (0) 2020.10.14
[codility] TapeEquilibrium (python)  (0) 2020.10.14
TAGS.

Comments