题解
2023-04-01 17:20:27
发布于:上海
657阅读
0回复
0点赞
#include <iostream>
#include <algorithm>
using namespace std;
long long n;
struct node
{
	string name;
	int a,b,c,id;
	int sum;
	void in()
	{
		cin>>name>>a>>b>>c;
		sum=a+b+c;
	}
	void out()
	{
		cout<<name<<" "<<sum<<endl;
	}
}arr[1000005];
bool cmp(node a,node b)
{
	if(a.sum!=b.sum)return a.sum>b.sum;
    if(a.a!=b.a)return a.a>b.a;
    if(a.b!=b.b)return a.b>b.b;
    return a.id<b.id;
}
int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		arr[i].in();
        arr[i].id=i+1;
	}
	sort(arr,arr+n,cmp);
	for(int i=0;i<n;i++)
	{
		arr[i].out();
	}
	
	return 0;
}
全部评论 4
嘶......大姐,这没注释啊,您这让刚入坑的咋看?看个寂寞?
2023-08-02 来自 上海
3有没有一种可能他是男的
2024-08-06 来自 浙江
1女的,它发过照片
2025-08-04 来自 上海
0

说出了我的心声!2025-08-08 来自 浙江
0
兄弟,正确率太高了,路转粉了
2023-05-14 来自 广东
1感谢支持
2023-05-20 来自 上海
1
第25行可以省略的吧,相等就是不排序不管,那么id就可以省略了,又快了一些
2025-02-16 来自 江苏
0a对不起,id是真的需要,没有过不了......
2025-02-16 来自 江苏
0
法姐
2024-12-14 来自 浙江
0












有帮助,赞一个