Binary String Matching
2017-07-12 20:02
323 查看
时间限制:3000 ms | 内存限制:65535 KB
难度:3
描述Given two strings A and B, whose alphabet consist only ‘0’ and ‘1’. Your task is only to tell how many times does A appear as a substring of B? For example, the text string B is ‘1001110110’ while the pattern string A is
‘11’, you should output 3, because the pattern A appeared at the posit
输入The first line consist only one integer N, indicates N cases follows. In each case, there are two lines, the first line gives the string A, length (A) <= 10, and the second line gives the string B, length (B) <= 1000. And
it is guaranteed that B is always longer than A.
输出For each case, output a single line consist a single integer, tells how many times do B appears as a substring of A.
样例输入
样例输出
3
0
3
代码实现:
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
int n;
char a[11],b[1002];
cin>>n;
while(n--)
{
int sum=0,temp,i,j;
cin>>a>>b;
for(j=0;j<strlen(b);j++)
{
temp=1;
//从每个字母开始比较
for(i=0;i<strlen(a);i++)
{
if(b[i+j]!=a[i])
temp=0;
}
sum+=temp;
}
cout<<sum<<endl;
}
return 0;
}
Binary String Matching
时间限制:3000 ms | 内存限制:65535 KB难度:3
描述Given two strings A and B, whose alphabet consist only ‘0’ and ‘1’. Your task is only to tell how many times does A appear as a substring of B? For example, the text string B is ‘1001110110’ while the pattern string A is
‘11’, you should output 3, because the pattern A appeared at the posit
输入The first line consist only one integer N, indicates N cases follows. In each case, there are two lines, the first line gives the string A, length (A) <= 10, and the second line gives the string B, length (B) <= 1000. And
it is guaranteed that B is always longer than A.
输出For each case, output a single line consist a single integer, tells how many times do B appears as a substring of A.
样例输入
3 11 1001110110 101 110010010010001 1010 110100010101011
样例输出
3
0
3
代码实现:
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
int n;
char a[11],b[1002];
cin>>n;
while(n--)
{
int sum=0,temp,i,j;
cin>>a>>b;
for(j=0;j<strlen(b);j++)
{
temp=1;
//从每个字母开始比较
for(i=0;i<strlen(a);i++)
{
if(b[i+j]!=a[i])
temp=0;
}
sum+=temp;
}
cout<<sum<<endl;
}
return 0;
}
相关文章推荐
- Binary String Matching
- NYOJ 5 Binary String Matching【string find的运用】
- Binary String Matching(str.find())
- Binary String Matching(kmp+str)
- nyoj 5Binary String Matching
- NY--5 -- Binary String Matching [水] [STL] [string类]
- 题目5 Binary String Matching
- Binary String Matching
- 5 Binary String Matching
- Binary String Matching
- noj 5 Binary String Matching
- ACM (5) Binary String Matching
- Binary String Matching
- acm-Binary String Matching
- NSWOJ ~ 1104 ~ BinaryStringMatching(strstr函数)
- nyoj 5 Binary String Matching (KMP)
- Binary String Matching
- NYOJ5 Binary String Matching
- 南阳理工oj题目练习---Binary String Matching
- NYOJ 5 Binary String Matching 字符串匹配