Notice
Recent Posts
Recent Comments
Link
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
Tags more
Archives
Today
Total
관리 메뉴

luke

[프로그래머스] - 최댓값 만들기 (2) (Java/자바) 본문

알고리즘문제/프로그래머스(Java)

[프로그래머스] - 최댓값 만들기 (2) (Java/자바)

luke-king 2025. 10. 13. 22:04

문제 : https://school.programmers.co.kr/learn/courses/30/lessons/120862

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 

 

 

 

 

 

 

 

문제.


 

 

 

 

 

 

 

 

풀이.


import java.util.*;
class Solution {
    public int solution(int[] numbers) {
        Arrays.sort(numbers);
        
        int res1 = numbers[numbers.length - 1] * numbers[numbers.length - 2];
        int res2 = numbers[0] * numbers[1];
        
        
        return res1 > res2 ? res1 : res2;
    }
}

이번 문제는 프로그래머스 "최댓값 만들기 (2)" 문제다.

문제 접근은 크게 어려움 없어 바로 풀이해보겠다.

 

1. numbers[] 값들을 오름차순으로 정렬해준다.

 

2. res1 변수의 값은 일반 정수의 마지막 인덱스와 그 앞의 인덱스 두 개의 값을 곱해 최댓값을 구해준다.

 

3. res2는 우리가 오름차순으로 정렬했으니 음수들도 정렬되어 있다. 그래서 0번째 1번째 인덱스 값을 곱해 합을 구해준다.

 

4. 마지막으로 비교해 주면 끝이다.