由于大部分人用string类型秒题,我一个用char类型的蒟蒻发现了给的数据范围有问题
代码如下
#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;
}
题目数据范围是[1,100],我用char类型定义[105]的数组大小,不应该会出问题,但WA了第15,25,27这三个点。我怀疑了一天我的问题,直到我把char类型改成string类型,直接AC了,证明数据点范围不符合题目要求。