将数组子串 A 和子串 B 拼接起来,除去首字母和末尾字母,新拼接的子串里寻找 字符串B

bool solve(char* A, char* B ) {

// write code here
char *msg = A;
char *substring = B;  

int len = strlen(msg);
char *tmp = (char*)malloc(2 * len + 1);  //申请2倍数组空间
if (len == strlen(substring))  //保证要比较的两个字符串长度相同
{
    strcpy(tmp, msg);  //原来的字符串拷贝到新空间里
    strcat(tmp, msg);  //字符串的拼接,实现复制
    
    int tmpstr = strlen(tmp);
    tmp[--tmpstr] = 0; //预防 abcd abcd 
    
    if (strstr(tmp+1, substring) != NULL) //+1 预防 abcd abcd
    {
        free(tmp);  //释放申请的新空间
        return 1;
    }
}
free(tmp);  //释放申请的新空间
return 0;

}