1. 程式人生 > 其它 >YbtOJ 字串處理課堂過關 例2 移位包含【bfs】

YbtOJ 字串處理課堂過關 例2 移位包含【bfs】

技術標籤:YbtOJ專項練習題題解字串字串YbtOJ題解

題目

在這裡插入圖片描述


思路

這道題直接字串包裡即可。
注意!!!要判斷比較時兩個字串是否出界,
不然會死的很慘。。。

程式碼

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std;
string s,ss;
int c,ans;
int main()
{
	cin>>s>>ss;
	while(ans<=s.size())
	 {
	 	ans++
; for(int i=0; i<=s.size()-1; i++) if(ss[0]==s[i]) { int js=0,j=i; while(ss[js]==s[j]&&js<ss.size()&&j<s.size()) js++,j++; c=max(c,js); // cout<<js<<" "<<c<<endl; js=0; } // cout<<c<<endl;
if(c==ss.size()) { cout<<"true"; return 0; } c=0; string ss=""; char x=s[0]; for(int i=0; i<=s.size()-2; i++) ss=ss+s[i+1]; s=ss+x; //cout<<endl<<s<<endl; } cout<<"false"; return 0; }