A - RJ101求解旋轉詞問題(c++)
Problem Description
如果字符串t是字符串s的後面若干個字符循環右移得到的,稱s和t是旋轉詞。例如“abcdef”和“efabcd”是旋轉詞,而"abcdef"和“feabcd”不是旋轉詞。
Input
第1行爲n(1<=n<=100),接下來的n行,每行兩個字符串,以空格分隔。
Output
輸出n行,若輸入的兩個字符串是旋轉詞,輸出“Yes”,否則輸出“No”。
思想:abcabc,這個字符就包含了所有的情況旋轉右移。
直接放代碼了:
#include<iostream>
#include<string>
using namespace std;
int main()
{
int n;
string s,s1,s2;
cin>>n;
while(n--){
cin>>s1>>s2;
s=s1+s1;
if(s.find(s2,0)!=-1)
cout<<"Yes"<<endl;
else
cout<<"No"<<endl;
}
return 0;
}