1104 生日
很简单的排序啊,根本不需要脑子,年 月 日 编号
相互比较就好了
#include<cstdio>
#include<cmath>
#include<string>
#include<cstring>
#include<iostream>
using namespace std;
int year[105],month[105],day[105];
string name[105];
int n;
int main()
{
scanf("%d",&n);
for(int i=0;i<n;i++)
{
cin>>name[i]>>year[i]>>month[i]>>day[i];//不需要结构体
}
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
if(year[i]>year[j]||year[i]==year[j]&&month[i]>month[j]||year[i]==year[j]&&month[i]==month[j]&&day[i]>=day[j])
{
swap(name[i],name[j]);
swap(year[i],year[j]);
swap(month[i],month[j]);
swap(day[i],day[j]);
}
}
}
for(int i=0;i<n;i++)
{
printf("%s\n",name[i].c_str());//转成一个字符串
}
return 0;
}