AcWing 776. (不会)字符串移位包含问题
原题链接
困难
作者:
mjj
,
2024-04-10 19:33:23
,
所有人可见
,
阅读 3
#include<iostream>
#include<algorithm> //swap()在这个头文件里
using namespace std;
int main()
{
string a,b;
cin>>a>>b;
if(a.size()<b.size()) swap(a,b); //a,b可以是整数类型也可以是字符串类型
//循环移位
for(int i=0;i<a.size();i++)
{
a=a.substr(1)+a[0]; //把a的第0个位置移到最后
//先把第0个位置去掉,substr(1)表示从1开始
for(int j=0;j+b.size()<=a.size();j++) //在枚举一下在a中是否存在
{
int k=0;
for(;k<b.size();k++) //不写int k=0 ,会重复定义
if(a[j+k]!=b[k])
break;
if(k==b.size())
{
puts("true");
return 0;
}
}
}
puts("false");
return 0;
}