您的位置:首页 > 其它

NYOJ 5 Binary String Matching 字符串匹配

2017-08-18 21:05 447 查看
英文题 用谷歌翻译了下


二进制字符串匹配

时间限制:3000 ms | 内存限制:65535 KB
难度:3

描述给定两个字符串A和B,其字母只包含“0”和“1”。你的任务只是告诉A出现多少次B的子串?例如,文本字符串B为'1001110110',而模式字符串A为'11',则应输出3,因为模式A出现在

输入第一行仅包含一个整数N,表示N个情况。在每种情况下,有两行,第一行给出字符串A,长度(A)<= 10,第二行给出字符串B,长度(B)<= 1000.保证B始终为长于A.
输出对于每种情况,输出一行包含一个整数,表示B出现多少次为A的子字符串。
样例输入
3
11
1001110110
101
110010010010001
1010
110100010101011


样例输出
3
0
3


数据比较普通 用两个循环就能AC

#include<stdio.h>
#include<string.h>
int main() {
char a[11], b[1001];
int n;
scanf("%d", &n);
while(n--) {
int count = 0;
scanf("%s%s", a, b);
for(int i = 0; i < strlen(b); i++) {
int temp = 1;
for(int j = 0; j < strlen(a); j++)
if(b[i+j] != a[j]) temp = 0;
if(temp) count++;
}
printf("%d\n", count);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: