64求助
查看原帖
64求助
700986
IkunFriendsChat楼主2022/8/12 10:20
#include<bits/stdc++.h>
using namespace std;
struct P
{
	string n;
	int y,m,d;
}p[114];
int i,num,j;
bool operator <(P a,P b)
{
	return(a.y<b.y||a.y==b.y&&a.m<b.m||a.y==b.y&&a.m==b.m&&a.d<=b.d);
}
void swap(P &a,P &b)
{
	string tmp;
	int t;
	tmp=a.n;
	a.n=b.n;
	b.n=tmp;
	t=a.y;
	a.y=b.y;
	b.y=t;
	t=a.m;
	a.m=b.m;
	b.m=t;
	t=a.d;
	a.d=b.d;
	b.d=t;
}
int main()
{
	cin>>num;
	for(i=1;i<=num;i++)
	cin>>p[i].n>>p[i].y>>p[i].m>>p[i].d;
	for(i=num-1;i>0;i--)
	{
		for(j=1;j<=i;j++)
		{
			if((p[j+1]<p[j])==1)swap(p[j+1],p[j]);
		}	
	}
	for(i=1;i<=num;i++)
	cout<<p[i].n<<endl;
}```
2022/8/12 10:20
加载中...