给定一个正整数N和一个由小写英文字母组成的长度N的字符串S。确定该字符串是否是某个字符串的两个副本的连接。也就是说,确定是否存在一个字符串T使S=T+T。如果S是某个字符串的两个副本的连接,则输出Yes;否则,直接输出No。 例如,输入6(回车)abcabc,输出Yes(回车)Let T=abc,and S=T+T。 或者输入4(回车)abac,输出No(回车)结束。
7条回答 默认 最新
- CSDN专家-天际的海浪 2021-05-07 21:05关注
#include <stdio.h> int main() { int len,i,judge=0; scanf("%d", &len); char a[len+1]; scanf("%s", a); if(len%2==0) { for(i=0;i<(len/2);i++) if(a[i]!=a[(len/2)+i]){ judge=1; break; } if(judge==1) printf("No"); else { printf("Yes"); } } else printf("No"); printf("\n"); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报