안녕하세요. 오늘은 Large 문제를 풀어볼 거예요.

문제

https://www.acmicpc.net/problem/14593

아이디어

최댓값을 구해줄 때 a가 가장 크거나 a는 같고 b가 작거나 a와 b는 같고 c가 작은지 확인해주면 됩니다.

소스코드

#include <iostream>
using namespace std;

int main(void)
{
    ios_base::sync_with_stdio(false); cin.tie(NULL);
    int N, i, a, b, c, mxa = 0, mxb = 0, mxc = 0, p = 0;
    cin >> N;
    for (i = 0; i < N; i++)
    {
        cin >> a >> b >> c;
        if (mxa < a || (mxa == a && mxb > b) || (mxa == a && mxb == b && mxc > c))
        {
            mxa = a;
            mxb = b;
            mxc = c;
            p = i + 1;
        }
    }

    cout << p;
}


감사합니다.

0개의 댓글