Cogito_ @ 2021-12-01 17:37:14
#include<bits/stdc++.h>
using namespace std;
struct Stu{
string _name;
int _s1;
int _s2;
int _s3;
int _sRes;
}_myArray[1005];
int _num;
bool cmp(Stu,Stu);
void ParseIn(){
cin>>_num;
for(int i=0;i<_num;i++){
cin>>_myArray[i]._name>>_myArray[i]._s1>>_myArray[i]._s2>>_myArray[i]._s3;
_myArray[i]._sRes=_myArray[i]._s1+_myArray[i]._s2+_myArray[i]._s3;
}
}
void Core(){
sort(_myArray,_myArray+_num,cmp);
}
void CWriteOut(){
cout<<_myArray[0]._name<<' '<<_myArray[0]._s1<<' '<<_myArray[0]._s2<<' '<<_myArray[0]._s3<<endl;
}
int main(){
ParseIn();
Core();
CWriteOut();
return 0;
}
bool cmp(Stu a,Stu b){
if(a._sRes>b._sRes){
return 1;
}
return 0;
}
by LYqwq @ 2021-12-04 22:37:55
@裴锴霖_lin 把_myArray[0]
的任意一项设为 _name
没更新,坑死人
by Michaelzjh @ 2021-12-04 22:44:21
我刚刚刚也是卡在这了,坑死人,真的是。qwq
by Cogito_ @ 2021-12-06 10:35:25
@LYqwq 谢谢大佬
by Cheney__22 @ 2021-12-19 14:09:21
同样的错误,感谢大佬
第一个测试点也是一样的问题,给出来的数据全部都是0 0 0
把累加变量的初值给成一个负数就好了