九度 1099:后缀子串排序

xiaoxiao2021-02-28  33

题目描述:

对于一个字符串,将其后缀子串进行排序,例如grain 其子串有: grain  rain  ain  in  n

然后对各子串按字典顺序排序,即:  ain,grain,in,n,rain

输入:

每个案例为一行字符串。

输出:

将子串排序输出

样例输入: grain 样例输出: ain grain in n rain 数据很烦人,多组

#include<iostream> #include<cstring> #include<cstdio> #include<queue> #include<stack> #include<algorithm> #include<cmath> using namespace std; bool cmp(string s1,string s2){ return s1<=s2; } int main(){ char s[1000]; while(cin>>s) { string a[1000]; int cnt=0; for(int i=0;i<strlen(s);i++){ string str=""; for(int j=i;j<strlen(s);j++){ str+=s[j]; } a[cnt++]=str; } sort(a,a+cnt,cmp); for(int i=0;i<cnt;i++){ cout<<a[i]<<endl; } } return 0; }

转载请注明原文地址: https://www.6miu.com/read-600366.html

最新回复(0)