awsl,有没有大佬来看看问题所在,谢谢!
查看原帖
awsl,有没有大佬来看看问题所在,谢谢!
388923
Tuowu楼主2020/12/2 17:25
#include<bits/stdc++.h>
using namespace std;
string ans[10000][2];
struct score{
	string name;
	int chinese,math,english,total;
};
score a[10000];
int main()
{
	string swap;
	int number;
	cin>>number;
	for(int i=0;i<number;i++)
	{
		cin>>a[i].name>>a[i].chinese>>a[i].math>>a[i].english;
		a[i].total=a[i].chinese+a[i].math+a[i].english;
	}
	for(int b=0;b<number;b++)
	{
		for(int i=0;i<b;i++)
		{
			if(abs(a[b].chinese-a[i].chinese)<=5&&abs(a[b].math-a[i].math)<=5&&abs(a[b].english-a[i].english)<=5&&abs(a[b].total-a[i].total)<=5)
			{
				if(a[b].name>a[i].name)
				{
					ans[b][0]=a[i].name;
					ans[b][1]=a[b].name;
				}
				else
				{
					ans[b][0]=a[b].name;
					ans[b][1]=a[i].name;
				}
			}
		}
	}
	for(int b=0;b<number;b++){
		if(ans[b][0]>ans[b+1][0])
		{
			swap=ans[b][0];
			ans[b][0]=ans[b+1][0];
			ans[b+1][0]=swap;
			swap=ans[b][1];
			ans[b][1]=ans[b+1][1];
			ans[b+1][1]=swap;
		}
		else
		{
			if(ans[b][2]>ans[b+1][2])
			{
				swap=ans[b][1];
				ans[b][1]=ans[b+1][1];
				ans[b+1][1]=swap;
				swap=ans[b][0];
				ans[b][0]=ans[b+1][0];
				ans[b+1][0]=swap;
			}
		}
	}
	for(int i=0;i<number;i++)
	{
		cout<<ans[i][0]<<" "<<ans[i][1]<<endl;
	}
	system("pause");
	return 0;
}
2020/12/2 17:25
加载中...