求救

P5740 【深基7.例9】最厉害的学生

如果有多个总分相同的学生,输出靠前的那位。
by adsd45666 @ 2024-09-01 10:25:14


1. 比较优先级写错了,如本贴代码,则s[0]为最小的分数 2. 没有认真读题,若总分相同,则输出编号较小的,在结构体中新添变量id 重构结构体,则AC code: ```cpp #include<bits/stdc++.h> using namespace std; struct S{ string name; int c,m,e,id; int zf(){ return c+m+e; } }s[10001]; bool cmp(S x,S y){ if(x.zf()==y.zf()) return x.id<y.id; return x.zf()>y.zf(); } int main(){ int n; cin>>n; for(int i=0;i<n;i++){ s[i].id=i; cin>>s[i].name>>s[i].c>>s[i].m>>s[i].e; } sort(s,s+n,cmp); cout<<s[0].name<<" "<<s[0].c<<' '<<s[0].m<<' '<<s[0].e<<' '; return 0; } ```
by adsd45666 @ 2024-09-01 10:36:11


@[EternityForMe](/user/1038489)
by adsd45666 @ 2024-09-01 10:36:33


|