这道题第一时间我想到的是sort,可是最后一个测试点死活过不去,去网上查了查博客发现sort是不稳定的,它没法保证排序的时候按照题目输入的顺序输出,于是就有了stable_sort,是稳定排序。
代码如下:
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
typedef pair<int,int> PII;
const int N = 510;
bool cmp(string a,string b){
return a.length() < b.length();
}
int main(){
int index = 0;
string t[25];
string s;
while(cin >> s && s!="#"){
t[index ++ ] = s;
}
stable_sort(t,t+index,cmp);
for(int i=0;i<index;i++){
cout << t[i] << " ";
}
return 0;
}