本文章由 WyOJ Shojo 从洛谷专栏拉取,原发布时间为 2021-05-09 11:50:50
思路
输入字符串 $s$ 和 $s1$,让 $s2$ 等于$s$,之后就 do while 循环,条件是 $s2$ 不等于 $s$。判断 $s2$ 是否等于 $s1$,是就输出,结束程序;不是就让 $s2$ 等于自己的最后一位加上自己,再删除最后一个字符。
最后在外面输出 No 就好了。
代码
#include <iostream>
#include <string>
#include <cstdio>
#include <algorithm>
using namespace std;
int main() {
string s,s1,s2;
cin>>s>>s1;
s2=s;
do{
if(s2==s1){
cout<<"Yes";
return 0;
}
s2=s2[s.size()-1]+s2;
s2.erase(s2.end()-1);
}
while(s2!=s);
cout<<"No";
return 0;
}

鲁ICP备2025150228号