分析
结构体经典应用。
C++ 代码
#include<bits/stdc++.h>
using namespace std;
int n;
struct stu{ //构造学生结构体
int hao,yu,shu,ying,sum;
bool operator < (const stu& p){ //构造排序函数
if(sum!=p.sum) return sum>p.sum;
if(yu!=p.yu) return yu>p.yu;
return hao<p.hao;
}
}score[310];
int main()
{
cin>>n;
for(int i=0;i<n;i++)
{
score[i].hao=i+1;
cin>>score[i].yu>>score[i].shu>>score[i].ying;
score[i].sum=score[i].yu+score[i].shu+score[i].ying;
}
sort(score,score+n);
int k=n;
if(n>=5)
k=5;
for(int i=0;i<k;i++)
{
cout<<score[i].hao<<" "<<score[i].sum<<endl;
}
return 0;
}