OhYeah!
2024-08-14 20:15:06
发布于:北京
3阅读
0回复
0点赞
#include "bits/stdc++.h"
using namespace std;
struct Node{
    string str;
    int a,b,c,id;
}arr[100001];
bool cmp(Node a,Node b)
{
    if(a.a+a.b+a.c==b.a+b.b+b.c)
        if(a.a==b.a)
            if(a.b==b.b)
                return a.id<b.id;
            else
                return a.b>b.b;
        else
            return a.a>b.a;
    else
        return a.a+a.b+a.c>b.a+b.b+b.c;
}
int main()
{
    int n;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>arr[i].str>>arr[i].a>>arr[i].b>>arr[i].c;
        arr[i].id=i;
    }
    stable_sort(arr+1,arr+1+n,cmp);
    for(int i=1;i<=n;i++)
    {
        cout<<arr[i].str<<' '<<arr[i].a+arr[i].b+arr[i].c<<endl;
    }
    return 0;
}
这里空空如也

有帮助,赞一个