震惊!后缀子串排序输出,超简单!

题目描述
对于一个字符串,将其后缀子串进行排序,例如grain 其子串有: grain rain ain in n 然后对各子串按字典顺序排序,即: ain,grain,in,n,rain
输入描述:
每个案例为一行字符串。
输出描述:
将子串排序输出
示例1
输入
复制
grain
输出
复制
ain
grain
in
n
rain

#include
using namespace std;
bool cmp(string a,string b){
return a<b;}
int main() {
    string str[100],s;
    while(cin>>s) {
        int len=s.size();
        int i=0;int lens=len;
        while(len--) {
            str[i]=s.substr(i,len+1);
            i++;
        }
        sort(str,str+lens,cmp);
        for(int i=0;i<lens;i++)
            cout<<str[i]<<endl;
    }
    return 0;
}

你可能感兴趣的:(上机)