6 条题解

  • 0
    @ 2023-4-11 13:45:36

    结构体 + cmp定义 (可能看起来好看些)

    #include <bits/stdc++.h>
    #define int long long int
    
    using namespace std;
    
    const int N = 310;
    struct node{
        int c,m,e,id;//chinese,math,english
        int sum;
    }s[N];
    int n;
    
    bool cmp(node a1,node a2){
        if(a1.sum != a2.sum) return a1.sum > a2.sum;
        if(a1.c != a2.c) return a1.c > a2.c;
        return a1.id < a2.id;
    }
    
    signed main(){
        scanf("%lld",&n);
        for (int i = 1;i <= n;i ++){
            scanf("%lld %lld %lld",&s[i].c,&s[i].m,&s[i].e);
            s[i].id = i;
            s[i].sum = s[i].c + s[i].m + s[i].e;
        }
        sort(s + 1,s + 1 + n,cmp);
        for (int i = 1;i <= 5;i ++){
            printf("%lld %lld\n",s[i].id,s[i].sum);
        }
        return 0;
    }
    

    信息

    ID
    303
    时间
    1000ms
    内存
    128MiB
    难度
    4
    标签
    递交数
    239
    已通过
    111
    上传者