题目链接acwing上的一个题目。
闫总总结出来的模板。记重载。
#include <cstring>
#include <iostream>
#include <algorithm>
#define x first
#define y second
using namespace std;
typedef pair<int, int> PII;
//const int N = 310;
//int n;
//struct Person
//{
// int id, sum, 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()
//{
// cin >> n;
// for(int i=1;i<=n;i++)
// {
// int a, b, c;
// cin>>a>>b>>c;
// q[i]={i,a+b+c,a,b,c};
// }
// sort(q+1, q+n+1);
//
// for(int i=1;i<=5;i++)
// {
// cout << q[i].id << ' ' << q[i].sum << endl;
// }
// return 0;
//}
const int N = 310;
int n;
struct Person
{
int id, sum, a, b, c;
}q[N];
bool cmp(Person& a, Person& b)
{
if(a.sum!=b.sum)return a.sum>b.sum;
if(a.a!=b.a)return a.a>b.a;
return a.id<b.id;
}
int main()
{
cin >> n;
for(int i=1;i<=n;i++)
{
int a, b, c;
cin>>a>>b>>c;
q[i]={i,a+b+c,a,b,c};
}
sort(q+1, q+n+1,cmp);
for(int i=1;i<=5;i++)
{
cout << q[i].id << ' ' << q[i].sum << endl;
}
return 0;
}