프로그래머스/lv1

프로그래머스 : 최소직사각형(lv1) C++

TIN9 2022. 11. 4.
반응형

프로그래머스 링크

https://school.programmers.co.kr/learn/courses/30/lessons/86491

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


#include <string>
#include <vector>

using namespace std;

int solution(vector<vector<int>> sizes) {
    int answer = 0;
    
    size_t Size = sizes.size();
    
    int Width = 0;
    int Height = 0;
    
    for(size_t i = 0; i < Size; ++i)
    {
        // 큰값을 전부 0번인덱스로 옮겨준다
        // 즉 0번인덱스 값이 1번 인덱스 값보다 작다면 둘이 스왑해주는것
        if(sizes[i][0] < sizes[i][1])
        {
            swap(sizes[i][0], sizes[i][1]);
        }
        
        // 명함의 가로 세로 크기중 가장 큰 값으로 계속 갱신해준다
        Width = Width > sizes[i][0] ? Width : sizes[i][0];
        Height = Height > sizes[i][1] ? Height : sizes[i][1];
    }
    
    // 반복문을 빠져나왔을때는 가장 큰값이 되어있으므로 두 값을 곱하게되면 됨
    answer = Width * Height;
    
    return answer;
}

 

반응형

댓글