3 11 1001110110 101 110010010010001 1010 110100010101011
3 0 3
程序代码:
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 int main() { 5 int N; 6 cin>>N; 7 while(N--) { 8 string s,a,b; 9 cin>>a>>b; 10 int at =0,i=0,len; 11 while((i=b.find(a,i))!=(string::npos)) { 12 at++; 13 i++; 14 } 15 cout<<at<<endl; 16 } 17 }
注解:
i=b.find(a,i) //在字符串b中查找字符串a从b字符中第i个元素开始查找,返回为int型的数值重新赋值给i,string::npos是标准库的string容器属性。返回字符存放位置。 这个东西是一个容器,它将字符串分成一个一个来存储。
while((i=b.find(a,i))!=(string::npos)) {
at++; //计算器
i++;
} //对b中字符串逐次与a比较直到结束
ACM Binary String Matching,布布扣,bubuko.com
原文:http://www.cnblogs.com/HRuinger/p/3598667.html