본문 바로가기
코딩 테스트/알고리즘(Java)

[프로그래머스/Lv.1] 최소직사각형

by KeepCoding 2025. 1. 23.

<문제>

 

 

<접근 방식>

1) 큰 수를 첫 인덱스 위치로 옮겨준다.

2) 첫 인덱스에 있는 가장 큰값과 두번째 인덱스에 있는 가장 큰값을 구한다.

3) 두 수를 곱한값이 가장 작은 직사각형 값이 된다.

 

 

<코드>

class Solution {
    public int solution(int[][] sizes) {
        int answer = 0;
        
        int maxY = 0;
        int maxX = 0;
        
        for(int i = 0; i < sizes.length; i++) {
            if(sizes[i][0] < sizes[i][1]) {
                int temp = sizes[i][0];
                sizes[i][0] = sizes[i][1];
                sizes[i][1] = temp;   
            }
            maxY = Math.max(sizes[i][0], maxY);
            maxX = Math.max(sizes[i][1], maxX);
        }
        return maxY*maxX;
    }
}
반응형