【结构体的应用】奖状发放2程序
2024-03-24 10:48:49
发布于:北京
12阅读
0回复
0点赞
系结构体多重优先级
#include<bits/stdc++.h>
using namespace std;
struct s{
string y1;
double y2;
double y3;
double y4;
double y5;
int y6;
}a[1003];
bool cmp(s x,s y){
if(x.y5 !=y.y5)return x.y5> y.y5;//先判总分,不同结束(第1优先级)
if(x.y2 !=y.y2)return x.y2> y.y2;//总分相同,再判语文(第2优先级)
if(x.y6 !=y.y6)return x.y6> y.y6;//总分,语文相同,再判id(第2优先级)
}
int main(){
int d;
cin >> d;
for(int i =1;i<=d;i++){
cin >> a[i].y1>> a[i].y2 >> a[i].y3>> a[i].y4;
a[i].y5=a[i].y2 + a[i].y3+ a[i].y4;
a[i].y6=i;}
sort(a+1,a+d+1,cmp);
for(int i=1;i<=2;i++){
cout<< a[i].y1<<" "<< a[i].y5<< endl;
}
return 0;
}
全部评论 1
输出通常为与输出同样条件,此处因题目要求改变,实践以题为准
2024-03-24 来自 北京
0
有帮助,赞一个