80分的朋友们看过来

P1093 [NOIP2007 普及组] 奖学金

LITTLEZHANG @ 2020-02-25 16:54:43

悲催呀!!!

你们看一看我的代码

#include<bits/stdc++.h>
using namespace std;
struct sxx{
    int n;//学号 
    int c,m,e;//语数英 
    int s;//总和 
}a[310];

bool cmp(sxx x,sxx y){
    if(x.s > y.s)
        return true;
    else if(x.s < y.s)
        return false;
    else{
        if(x.c > y.c)
            return true;
        else if(x.c < y.c)
            return true;
        else{
            if(x.n < y.n)
                return true;
            else
                return false;
        }
    } 
}
int main(){
    int m;
    cin>>m;
    for(int i=1;i<=m;i++){
        a[i].n=i;
        cin>> a[i].c>>a[i].m>>a[i].e;
        a[i].s=a[i].c+a[i].m+a[i].e;
    }
    sort(a+1,a+m+1,cmp);
    for(int i=1;i<=5;i++)
        cout<<a[i].n<<" "<<a[i].s<<endl;
}

首先,我想跟出题人说一下

这题有bug!!!

我测试点6的结果:是

66 276
88 270
101 270
19 270
93 267

而测试6的答案是:

66 276
88 270
19 270
101 270
93 267

只是顺序错了呀!


by 紫陰花 @ 2020-02-25 16:55:26

滥用标题字符,举报了(


by LITTLEZHANG @ 2020-02-25 16:55:35

@LITTLEZHANG 对的


by Retired_lvmao @ 2020-02-25 16:56:52

@LITTLEZHANG

题目都花蛮长一段注明了,根本不冤


by fresh_boy @ 2020-02-25 17:00:19

@LITTLEZHANG 题目中明确说了,顺序错,不能得分


by 594wyx @ 2020-02-25 17:16:32

@LITTLEZHANG

顺序错不给分

请您仔细看题


by HyyypRtf06 @ 2020-02-25 17:42:21

kkk:但如果有多个人(30.41k)通过了这道题,那最好不要怀疑是数据的锅

@LITTLEZHANG 您语文阅读是不是需要补一补?qvq


|