问题标题: 酷町堂:3793 字符串子串

0
0
已解决
郑凝溪
郑凝溪
初级光能
初级光能

题目描述 Description

给出一个字符串s,求出其所有长度为x的子串并输出。如果不存在长度为x的字符串则输出-1。

输入描述 Input Description

第一行,一个字符串,s
第二行,一个整数,x

输出描述 Output Description

如果存在长度为x的子串,则按在字符串中的先后顺序分别输出所有子串,每行一个
不存在这样的子串则输出-1

样例输入 Sample Input


 

abcdefg
3

样例输出 Sample Output


 

abc
bcd
cde
def
efg

数据范围及提示 Data Size & Hint

字符串不包含空格

string s;
	int x;
	getline(cin,s);
	cin>>x;
	for(int i=0;i<=s.size()-1;i++)
	{
		if(i+x<=s.size())
		{
			for(int j=i;j<=i+x-1;j++)
			{
				cout<<s[j];
			}
			cout<<endl;
		}
	}

各位大佬

我想知道如果存在长度为x的子串,则按在字符串中的先后顺序分别输出所有子串,每行一个
不存在这样的子串则输出-1這部分怎麼寫???

郑凝溪在2019-04-14 12:09:39追加了内容

上面是我的代碼


0
已采纳
李思远
李思远
中级守护
中级守护
    a=s.size();
    if(x<=s)
        for(i=0;i<=s-x;i++)
            cout<<s.substr(i,x)<<endl;
    else
        cout<<"-1";
0
宋梓涵
宋梓涵
新手光能
新手光能
if(a.size()<x)
    cout<<-1;
else{
     for(int i=0;i<=a.size()-x;i++)
        cout<<a.substr(i,x);
   }


//判断是否为空字符:empty
//删除:erase
//截取:substr
//插入:insert
//替换:replace

0
我要回答