0
已解决
#include<bits/stdc++.h>
using namespace std;
struct cmd{
string c;
}v[100000];
bool cmp(cmd a,cmd b){
if(a.c.size()!=b.c.size())return a.c.size()>b.c.size();
for(int i=0;i<a.c.size();i++)
if(a.c[i]!=b.c[i])return a.c[i]<b.c[i];
}
int main()
{
int n=0;
cin>>n;
getchar();
for(int i=0;i<n;i++)getline(cin,v[i].c);
sort(v,v+n,cmp);
for(int i=0;i<n;i++)
cout<<v[i].c<<"\n";
return 0;
}
0
已采纳
