Strong Root

난이도 ★☆☆☆


문제를 보시려면 여기를 클릭





문제 요약

 입력받은 숫자들 중 3개를 뽑아서 곱했을 때 가장 큰 값을 리턴





힌트

 정렬을 한 후 최대값끼리 곱한다. 단! 음수에 주의하여야 한다 (경우의 수 문제)





이하는 코드입니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public int solution(int[] A) {
    Arrays.sort(A);
 
    if (A[A.length - 1< 0) {
        return A[A.length - 1* A[A.length - 2* A[A.length - 3];
    }
 
    if (A[A.length - 2< 0 || A[A.length - 3< 0) {
        return A[A.length - 1* A[0* A[1];
    }
 
    int p1 = A[A.length - 1* A[A.length - 2* A[A.length - 3];
    int p2 = A[A.length - 1* A[0* A[1];
 
    return p1 > p2 ? p1 : p2;
}
cs