2 条题解

  • 1
    @ 2023-10-4 17:23:16
    #include<iostream>
    #include<algorithm>
    using namespace std;
    struct score{
    int c,m,e,a,i;//定义struct类,c语文,m数学,e英语,a总分,i学号
    };
    score s[301];
    bool cmp(score x,score y){//定义比较器,待sort使用
    bool q=0;
    if(x.a>y.a) q=1;
    else if(x.a==y.a&&x.c>y.c) q=1;
    else if(x.a==y.a&&x.c==y.c&&x.i<y.i) q=1;
    return q;
    }
    int main(){
    int n;
    cin>>n;
    for(int i=0;i<n;i++){//读入信息,计算总分
    cin>>s[i].c>>s[i].m>>s[i].e;
    s[i].i=i+1;
    s[i].a=s[i].c+s[i].m+s[i].e;
    }
    sort(s,s+n,cmp);//按比较器cmp规则排序
    for(int i=0;i<5;i++)
    cout<<s[i].i<<" "<<s[i].a<<endl;
    }
    

    信息

    ID
    155
    时间
    1000ms
    内存
    125MiB
    难度
    5
    标签
    递交数
    117
    已通过
    44
    上传者