所以为什么第5、8、10测试点不对
2023-11-20 20:24:24
发布于:浙江
30阅读
0回复
0点赞
三个测试点趋势了(doge),大佬帮忙改一改(功德+1145141919810)
#include <iostream>
#include <algorithm>
using namespace std;
struct stu{
string name;
long long silv,gold,copp,id,all = 0;
void input(){
cin >> name >> gold >> silv >> copp;
all = gold+silv+copp;
}
void res(){
cout << name << ' ' << all << endl;
}
}a[1000005];
bool cmp(stu a,stu b){
if(a.all != b.all){
return a.all > b.all;
}
if(a.gold != b.gold){
return a.gold > b.gold;
}
if(a.silv != b.silv){
return a.silv < b.silv;
}
return a.id < b.id;
}
int main(){
long long n;
cin >> n;
for(long long i = 0;i < n;i++){
a[i].input();
a[i].id = i;
}
sort(a,a+n,cmp);
for(long long i = 0;i < n;i++){
a[i].res();
}
return 0;
}
这里空空如也
有帮助,赞一个