结构体应用(用到快排
2025-06-07 14:50:44
发布于:上海
29阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
struct f { //定义一个可爱结构体
string name; //名儿
int jin,yin,tong,sum,id; //金牌,银牌,铜牌,总数,和编号
}a[100010]; //数组
bool cmp (f x,f y){ //定义一个cmp排序
if (x.sum!=y.sum) return x.sum>y.sum;
if (x.jin!=y.jin) return x.jin>y.jin;
if (x.yin!=y.yin) return x.yin>y.yin;
else return x.id<y.id; //根据题目要求进行排序要求 (降排用>哦
}
int main(){
int n; //主函数部分
cin >> n;
for (int i=1;i<=n;i++){
cin >> a[i].name >> a[i].jin >> a[i].yin >> a[i].tong;
a[i].sum=a[i].jin+a[i].yin+a[i].tong;
a[i].id=i; //输入
}
sort (a+1,a+n+1,cmp); //排序环节
for (int i=1;i<=n;i++){
cout << a[i].name << " " << a[i].sum << endl; //输出排好序的名字和总的奖牌数。。
}
return 0;
}
这里空空如也
有帮助,赞一个