Binary String Matching
输入两个字符串A和B,字符串由‘0’和‘1’组成,你的任务是判断A字符串在B字符串中出现了几次。
思路是:for i in B //遍历一遍B { k=i , //用k来记录i
for j in A
{
if( A[ j ] != B [ k ]) break;
k++,j++ //在k到strken(a)中如果有不同的字符就跳出
}
if(no break) //如果没有跳出,就说明A在B中出现了。
sum++;
}
#include<stdio.h>
#include<string.h>
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
char a[15];
char b[1000];
int i,j,k,l=0;
scanf("%s%s",a,b);
for(i=0; i<strlen(b); i++)
{
k=i;
for(j=0; j<strlen(a); j++,k++)
{
if(b[k]!=a[j])
break;
}
if(j>=strlen(a))
l++;
}
printf("%d\n",l);
}
return 0;
}