WA求助
查看原帖
WA求助
143416
憬芳楼主2025/1/18 12:57

麻烦大佬帮忙看一下这个代码为什么WA三个点


思路:在T字符串的每一个字符下都遍历S字符串以每一个字符为开头的字符串,达到查找循环子串的目的

#include <cstdio>
#include <cstring>
using namespace std;
char T[105],S[105];
int lent,lens;
int main()
{
	int i,j,ti,tj,temp;
	scanf("%s%s",T,S);
	lent=strlen(T);
	lens=strlen(S);
	if(lens>lent)
	{
		printf("no");
		return 0;
	}
	for(i=0;i<=lent-lens;i++)
	{
		for(j=0;j<lens;j++)
		{
			if(T[i]==S[j])
			{
				temp=0;
				ti=i,tj=j;
				while(temp!=lens)
				{
					if(T[ti]!=S[tj])break;
					temp++;
					ti++;
					tj++;
					if(tj==lens)tj=0;
				}
				if(temp==lens)
				{
					printf("yes");
					return 0;
				}
			}
		}
	}
	printf("no");
	return 0;
}
2025/1/18 12:57
加载中...