题目:
P5740 【深基7.例9】最厉害的学生 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
代码:
#include<bits/stdc++.h>
using namespace std;
typedef struct{
string name;
int ch,ma,en;
int sum;
int idx;
}student;
student s[1005];
//自定义排序函数
bool cmp(student a,student b)
{
if(a.sum!=b.sum)
return a.sum>b.sum; //先根据分数排名
else
return a.idx<b.idx;//若分数相同,则根据序号排名
}
int main()
{
//加快cin cout的速度
std::ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>s[i].name>>s[i].ch>>s[i].ma>>s[i].en;
s[i].sum=s[i].ch+s[i].ma+s[i].en;
s[i].idx=i;
}
sort(s,s+n,cmp);
cout<<s[0].name<<" "<<s[0].ch<<" "<<s[0].ma<<" "<<s[0].en;
return 0;
}