题目给出n组01字符串,每组字符串有A,B两个,len_A<=10,len_B<=1000,求B中与A相同的字串个数。
C++做法:
用String头文件中的compare函数即可
#include <iostream>
#include <string>
using namespace std;
int main(){
int n,i,j,lena,lenb,cnt;string A,B;
cin>>n;
for(i=0;i<n;i++){
cin>>A>>B;
lena=A.length();lenb=B.length();cnt=0;
for(j=0;j<=lenb-lena;j++){
if(B.compare(j,lena,A)==0)cnt++;
}
cout<<cnt<<endl;
}
}
C语言做法:
既然是01字符串,我们很容易地就能想到位运算操作。那么对区间的移动: