最厉害的90分

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

1q2zb @ 2023-08-25 10:31:44

希望看到此讨论的人不要在发此题的问题了

用sort(不是稳定的排序)做的建议学习以下代码

srtuct student{int ...,ind,sum;};

bool cmp(student x,student y){
    if(x.sum==y.sum)return x.ind<y.ind;
   else return x.sum>y.sum;
}

int main(){
    ...
    for(int i=1;i<=n;i++)a[i].ind=i;
   sort(a+1,a+1+n,cmp);
}

by lao_wang @ 2023-08-25 10:33:37

e 所以为什么我的cmp不像你这么写还对了


by lao_wang @ 2023-08-25 10:35:12

为什么你要比较前后顺序不是可以不比么


by ninji @ 2023-08-25 10:35:48

@lao_wang 我都没用 cmp


by ninji @ 2023-08-25 10:36:03

就过了


by lao_wang @ 2023-08-25 10:38:01

@ninji e 确实也不需要


by ninji @ 2023-08-25 10:39:38

  sum[i]=a[i].chinese+a[i].math+a[i].english;
        if(max<sum[i]){max=sum[i];x=i;}

by 1q2zb @ 2023-08-25 11:06:07

@ninji dalao你好,我主要说的是用sort来做的人。写的不好,请您见谅。


|