@一名胡桃厨~ 统计排名题解
2023-08-24 10:37:16
发布于:上海
#include<bits/stdc++.h>
using namespace std;
struct node{
string name;
double c,m,e,sum;
int cnt;
}stu[1001];
bool cmp(node a,node b){
if(a.sum!=b.sum) return a.sum>b.sum;
if(a.c!=b.c) return a.c>b.c;
if(a.m!=b.m) return a.m>b.m;
if(a.e!=b.e) return a.e>b.e;
return a.cnt<b.cnt;
}
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>stu[i].name>>stu[i].c>>stu[i].m>>stu[i].e;
stu[i].sum+=(stu[i].c+stu[i].m+stu[i].e);
stu[i].cnt=i;
}
sort(stu+1,stu+1+n,cmp);
for(int i=1;i<=5;i++){
cout<<stu[i].name<<" "<<stu[i].sum<<endl;
}
return 0;
}
全部评论 1
过了,谢谢
2023-08-30 来自 上海
0OKOK
2023-08-31 来自 上海
0
有帮助,赞一个