해결방법
경우의 수를 나눠서 하나하나 다 구해준다. 만약 이전 값보다 다음 값이 큰 경우 maxPrize를 갱신해주는 식으로 구한다.
정답 코드
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int N;
cin >> N;
int maxPrize = 0;
for (int i = 0; i < N; i++)
{
int a, b, c;
cin >> a >> b >> c;
int prize = 0;
if (a == b && b == c)
{
prize = 10000 + a * 1000;
}
else if (a == b || a == c)
{
prize = 1000 + a * 100;
}
else if (b == c)
{
prize = 1000 + b * 100;
}
else
{
prize = max({ a, b, c }) * 100;
}
if (prize > maxPrize)
{
maxPrize = prize;
}
}
cout << maxPrize << endl;
return 0;
}
'코딩테스트' 카테고리의 다른 글
BOJ - 21867 Java Bitecode (0) | 2024.09.19 |
---|---|
BOJ - 1440 타임머신 (0) | 2024.09.19 |
BOJ - 5598 카이사르 암호 (0) | 2024.09.13 |
BOJ - 2914 저작권 (0) | 2024.09.12 |
BOJ - 16466 콘서트 (1) | 2024.09.10 |