建议使用sort排序
by Dream_weavers @ 2022-04-23 09:08:56
题目写错了,应该是靠后的先输出
by Fack_ @ 2022-05-17 20:58:26
```cpp
#include<bits/stdc++.h>
using namespace std;
struct a
{
string s;
long long int y,m,d,t,id;
}a[101];
int main()
{
int n;bool b;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i].s>>a[i].y>>a[i].m>>a[i].d;
a[i].t=a[i].y*10000+a[i].m*100+a[i].d;
a[i].id=i;
}
for(int i=1;i<n;i++)
{
b=0;
for(int j=0;j<=n-i-1;j++)
{
if(a[j].t>a[j+1].t)
{
swap(a[j].s,a[j+1].s);
swap(a[j].t,a[j+1].t);
swap(a[j].id,a[j+1].id);
b=1;
}
}
if(b==0)
{
break;
}
}
for(int j=1;j<n-1;j++)
{
b=0;
for(int i=0;i<n-i-1;i++)
{
if(a[i].t==a[i+1].t&&a[i].id>a[i+1].id)
{
swap(a[j].s,a[j+1].s);
swap(a[j].t,a[j+1].t);
swap(a[j].id,a[j+1].id);
b=1;
}
}
if(b==0)
{
break;
}
}
for(int i=0;i<n;i++)
{
cout<<a[i].s<<endl;
}
return 0;
}
```
by Fack_ @ 2022-05-17 21:01:03