提交时间:2024-01-25 10:09:13

运行 ID: 127754

#include<iostream> #include<cstdio> #include<string> #include<cstring> #include<algorithm> using namespace std; struct node { string s,t; }; const int NR=110; node a[NR]; bool cmp(node x,node y) { return x.t>y.t; } int main() { int n,i; cin>>n; for(i=1;i<=n;i++) { cin>>a[i].s; if(a[i].s.size()==1) a[i].t=a[i].s+"000000000"; if(a[i].s.size()==2) a[i].t=a[i].s+"00000000"; if(a[i].s.size()==3) a[i].t=a[i].s+"0000000"; if(a[i].s.size()==4) a[i].t=a[i].s+"000000"; if(a[i].s.size()==5) a[i].t=a[i].s+"00000"; if(a[i].s.size()==6) a[i].t=a[i].s+"0000"; if(a[i].s.size()==7) a[i].t=a[i].s+"000"; if(a[i].s.size()==8) a[i].t=a[i].s+"00"; if(a[i].s.size()==9) a[i].t=a[i].s+"0"; } sort(a+1,a+n+1,cmp); for(i=1;i<=n;i++) cout<<a[i].s; return 0; }