거인의 코딩일지
[Lv.0_Java] 최댓값 만들기(2) 본문
728x90
import java.util.*;
class Solution {
public int solution(int[] numbers) {
int answer = 0;
int size = 0;
for (int i = numbers.length-1; i >= 1; i--){
size += i;
}
int [] arr = new int [size];
int k = 0;
for(int i = 0; i < numbers.length; i++){
for(int j = i+1; j < numbers.length; j++){
arr[k++] = numbers[i] * numbers[j];
}
}
Arrays.sort(arr);
return arr[arr.length-1];
}
}
우선 배열을 하나 만들어서 넣어준다음 정렬을 통해 최댓값을 가져오려고 했다!
모든 경우의 수를 더해줘야 하기때문에 size에 += i 를 통하여 모든 경우의 수를 더한 값을 배열의 길이에 할당하였고
이중 for 문을 활용하여 배열안에 모든 곱을 arr 배열에 넣어준 뒤 Arrays.sort() 함수를 활용하여 오름차순 정리를 하여 배열의 맨 마지막에 있는 값을 return 해주었다!!!
import java.util.*;
class Solution {
public int solution(int[] numbers) {
int len = numbers.length;
Arrays.sort(numbers);
return Math.max(numbers[0] * numbers[1], numbers[len - 2] * numbers[len - 1]);
}
}
이건 다른 사람들의 풀이인데.... 너무 간결해졌다... 더 공부하자...!
![](https://t1.daumcdn.net/keditor/emoticon/friends1/large/009.gif)
728x90
'알고리즘테스트 > Programmers' 카테고리의 다른 글
[Lv.0_Java] 가장 큰 수 찾기 (0) | 2023.08.16 |
---|---|
[Lv.0_Java]문자열 정렬하기(1) (0) | 2023.08.16 |
[Lv.1_Java] 직사각형 별찍기 (0) | 2023.08.16 |
[Lv.0_Java] 직각삼각형 출력하기 (0) | 2023.08.16 |
[Lv.0_Java] 특이한 이차원 배열2 (0) | 2023.08.16 |