自己整一个排序函数就完了
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
bool cmp(string a,string b){
if(a.size()==b.size()){
if(a[0]==b[0]){
return cmp(a.substr(1),b.substr(1));
} else {
return a[0]<b[0];
}
} else {
return a.size()<b.size();
}
}
int main(){
int n;
string data[100];
while(cin>>n){
for(int i=0;i<n;i++){
cin>>data[i];
}
sort(data,data+n,cmp);
for(int i=0;i<n;i++){
cout<<data[i]<<endl;
}
}
}

京公网安备 11010502036488号