본문 바로가기

백준

2822 점수 계산

점수의 인덱스까지 필요했기 때문에 pair로 인덱스도 저장했다.

 

마지막에 인덱스를 정렬해서 출력해야 해서 이건 따로 set 만들어서 출력함

 

 

#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <functional>
#include <string>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <cmath>

#define xx first
#define yy second
#define all(x) (x).begin(), (x).end()
#define MOD 1000000007

using namespace std;
using i64 = long long;
using ii = pair<int, int>;
using ii64 = pair<i64, i64>;

bool sortbyfirst(const pair<int, int>& a, const pair<int, int>& b)
{
    return (a.first < b.first);
}

int     main()
{
    vector<ii> v(8);
    for (int i = 0; i < 8; i++)
    {
        scanf("%d", &v[i].xx);
        v[i].yy = i;
    }
    
    sort(v.begin(), v.end(), sortbyfirst);

    set<int> s;
    int sum = 0;
    for (int i = 7; i >= 3; i--)
    {
        sum += v[i].xx;
        s.insert(v[i].yy + 1);
    }

    printf("%d\n", sum);
    for (auto& si : s)
        cout << si << " ";


    return 0;
}

'백준' 카테고리의 다른 글

2435 기상청 인턴 신현수  (0) 2020.08.25
17212 달나라 토끼를 위한 구매대금 지불 도우미  (0) 2020.08.25
2108 통계학  (0) 2020.08.23
3018 캠프파이어  (0) 2020.08.11
2662 기업투자  (0) 2020.08.10