/**
* 旋转字符串
* @param A string字符串
* @param B string字符串
* @return bool布尔型
*
* C语言声明定义全局变量请加上static,防止重复定义
*/
#include <stdbool.h>
#include <string.h>
bool solve(char* A, char* B ) {
// write code here
if (!strcmp(A,B))
return true;
int len_A = strlen(A);
int len_B = strlen(B);
if (len_A != len_B)
return false;
int flag = 0;
for (int i = 1; i < len_A; i++)
{
if(B[0] == A[i])
{
flag = i;
break;
}
if (i == len_A - 1)
return false;
}
int left = flag;//旋转的左半部分的个数
int right = len_A - left;//旋转的右半部分个数
for (int j = 0; j < len_B; j++)
{
if ( j < right)//比较B的左半部分
{
if (B[j] != A[left + j])
return false;
}
else
{
if (B[j] != A[j - right])//比较B的右半部分
return false;
}
}
return true;
}