Problem Solving
[프로그래머스] 최소 직사각형
지옹
2025. 2. 19. 21:11
문제
최소직사각형
풀이 및 코드
큰 것 중 최대값과 작은 것 중 최대 값을 찾으면 된다.
문제에서 30x70을 70x30으로 회전해서 수납한다고 했는데, 결국
- 큰값x작은 값의 형태로 만들어 주고
- 큰 값 중 최대값(예제에서는 80), 작은 것 중 최대 값(예제에서는 50)을 구해주면 된다.
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int solution(vector<vector<int>> sizes) {
int len = sizes.size();
int width = 0, height =0;
for(int i =0; i<len; i++){
int first = max(sizes[i][0], sizes[i][1]);
int second = min(sizes[i][0], sizes[i][1]);
width = max(width, first);
height = max(height, second);
}
return width * height;
}