为啥swapx没换
  • 板块P1104 生日
  • 楼主lizipeng
  • 当前回复6
  • 已保存回复6
  • 发布时间2021/5/29 17:54
  • 上次更新2023/11/4 22:33:19
查看原帖
为啥swapx没换
398149
lizipeng楼主2021/5/29 17:54

大佬求看代码

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <string>
#include <cmath>
#include <algorithm>
using namespace std;
struct node
{
	char s[30];
	int year,month,day,ID;
}a[50005];
int n;
void swapx(node x,node y)
{
	node ss=x;x=y;y=ss;return;
}
int main()
{
	cin>>n;
	for (int i=1;i<=n;i++)
	{
		cin>>a[i].s>>a[i].year>>a[i].month>>a[i].day;
		a[i].ID=i;
	}
	for (int i=1;i<=n-1;i++)
	for (int j=i+1;j<=n;j++)
	if (a[i].year>a[j].year) swapx(a[i],a[j]);
	else if (a[i].year==a[j].year)
	{
		if (a[i].month>a[j].month) swapx(a[i],a[j]);
		else if (a[i].month==a[j].month)
		{
			if (a[i].day>a[j].day) swapx(a[i],a[j]);
			else if (a[i].day==a[j].day&&a[i].ID<a[j].ID) swapx(a[i],a[j]);
		}
	}
	for (int i=1;i<=n;i++) cout<<a[i].s<<endl;
}
2021/5/29 17:54
加载中...