AcWing 429. 奖学金
原题链接
简单
作者:
我要出去乱说
,
2021-01-27 22:38:56
,
所有人可见
,
阅读 269
多关键字排序就是结构体排序
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 310;
int n;
struct Person
{
int id, sum, a, b, c; //a,b,c分别表示语数外
bool operator< (const Person& t) const //经典结构体排序模板,背就完了
{
if (sum != t.sum) return sum > t.sum;
if (a != t.a) return a > t.a;
return id < t.id;
}
}q[N];
int main()
{
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i ++ )
{
int a, b, c, sum;
scanf("%d%d%d", &a, &b, &c);
sum = a + b + c;
q[i] = {i, sum, a, b, c};
}
sort(q + 1, q + n + 1);
for (int i = 1; i <= 5; i ++ ) printf("%d %d\n", q[i].id, q[i].sum);
return 0;
}