자라는 개발자/문제풀이

백준 c++ 2303 숫자 게임

자란다 2022. 5. 22. 21:44
728x90
반응형

2303 숫자 게임

문제 풀이

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
void fast_io(void)
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
}
vector<int> v,arr;
vector<pair<int, int>> res;
int main(void)
{
    fast_io();
    int n;
    cin >> n;
    for (int cnt = 0; cnt < n;cnt++)
    {
        for (int i = 0; i < 5;i++)
        {
            int a;
            cin >> a;
            v.push_back(a);
        }
        for (int i = 0; i < 3; i++)
        {
            int max = 0;
            for (int j = i + 1; j < 4; j++)
                for (int k = j + 1; k < 5; k++)
                    arr.push_back((v[i] + v[j] + v[k]) % 10);
        }
        sort(arr.rbegin(), arr.rend());
        res.push_back({arr[0],cnt+1});
        arr.clear();
        v.clear();
    }
    sort(res.rbegin(), res.rend());
    cout << res[0].second;
}

1의 자리수들을 vector arr에 넣어 정렬한뒤 가장 큰 값과 사람의 번호를 넣어주었다. 사람수 n 만큼 돌고나면 한번더 정렬해서 제일 큰 값을 뽑아주었다.

728x90
반응형