题目链接:https://www.luogu.com.cn/problem/P1093
题记:用sort排序结构体即可
#include<bits/stdc++.h>
using namespace std;
struct node{
int x;
int a,b,c;//语数英
};
bool cmp(node j,node k){
if(j.a+j.b+j.c==k.a+k.b+k.c){//当总分相同的时候
if(j.a==k.a)//当语文成绩相同的时候
return j.x<k.x;
else
return j.a>k.a;
}
else
return j.a+j.b+j.c>k.a+k.b+k.c;
}
int main(){
int n;
cin>>n;
node node[305];
for(int i=1;i<=n;i++){
cin>>node[i].a>>node[i].b>>node[i].c;
node[i].x=i;
}
sort(node+1,node+1+n,cmp);
for(int i=1;i<=5;i++)
cout<<node[i].x<<" "<<node[i].a+node[i].b+node[i].c<<endl;
return 0;
}