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