水
2025-04-12 12:00:14
发布于:广东
1阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
int n;
struct Node{
    string s;
    int a, b, c;
    int id;
}a[100010];
bool cmp(Node x, Node y){
    if (x.a+x.b+x.c != y.a+y.b+y.c) return x.a+x.b+x.c>y.a+y.b+y.c;
    if (x.a!=y.a) return x.a>y.a;
    if (x.b!=y.b) return x.b>y.b;
    if (x.c!=y.c) return x.c>y.c;
    return x.id<y.id;
}
int main(){
    cin >> n;
    for (int i=1;i<=n;i++){
        cin >> a[i].s >> a[i].a >> a[i].b >> a[i].c;
        a[i].id = i;
    }
    sort(a+1, a+n+1, cmp);
    for (int i=1;i<=n;i++){
        cout << a[i].s << " " << a[i].a+a[i].b+a[i].c << "\n";
    }
    
    return 0;
}
这里空空如也


有帮助,赞一个