점수의 인덱스까지 필요했기 때문에 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 |