结构体sort嵌套排序的运用方法

#include<iostream>
#include<stdio.h>
#include<math.h>
#include<algorithm>
using namespace std;
struct arr
{
	int num;
	int sum;
	int china;
}data[101000];
bool cmp(arr a,arr b)
{
	if(a.sum!=b.sum)return a.sum>b.sum;
	if(a.china!=b.china)return a.china>b.china;
	return true;
}
int main()
{
	int n,i,a,b,c;
	cin>>n;
	for(i=0;i<n;i++)
	{
		cin>>a>>b>>c;
		data[i].sum=a+b+c;
		data[i].num=i;
		data[i].china=a;
	}
	sort(data,data+n,cmp);
	for(int i=0;i<5;i++){
		cout<<data[i].num+1<<" "<<data[i].sum<<endl;
	}
	return 0;
}


版权声明:本文为weixin_55635646原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。