帮忙
查看原帖
帮忙
835944
gyttnnd楼主2022/11/10 19:43
#include<bits/stdc++.h>
using namespace std;
struct node
{
   string name;
   int a,b,c,sum;
}t[1099];
bool f(node a,node b)
{
   return a.sum<b.sum;
}
int main()
{
   int n;
   cin>>n;
   for(int i=1;i<=n;i++)
   {
   	cin>>t[i].name>>t[i].a>>t[i].b>>t[i].c;
   	t[i].sum=t[i].a+t[i].b+t[i].c;
   }
   sort(t+1,t+n+1,f);
   int p=1;
   for(int i=2;i<=n;i++)
   {
   	for(int j=i-1;j>=p;j--)
   	{
   		if(t[i].sum-t[j].sum<=10&&abs(t[i].a-t[j].a)<=5&&abs(t[i].b-t[j].b)<=5&&abs(t[i].c-t[j].c)<=5)
   		{
   			if(t[i].name>t[j].name)
   			cout<<t[j].name<<" "<<t[i].name<<endl;
   			else
   			cout<<t[i].name<<" "<<t[j].name<<endl;
   		}
   		if(t[i].sum-t[j].sum>10)
   		{
   			p=j;
   			break;
   		}
   	}
   }
   return 0;
}
2022/11/10 19:43
加载中...