字符串匹配

简介: 版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.csdn.net/hongbochen1223/article/details/48266231 描述G...
版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.csdn.net/hongbochen1223/article/details/48266231

描述

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 <stdio.h>
#include <stdlib.h>

int main()
{
    int n,i,j;

    int temp;

    /** 保存A,B字符串 **/
    char A[11];
    char B[1001];

    //保存个数
    int count = 0;

    scanf("%d",&n);
    while(n--){
        getchar();

        count = 0;

        scanf("%s",A);
        scanf("%s",B);

        for(i = 0;B[i] != '\0';i++){

            if(B[i] == A[0]){
                //printf("0 == yes\n");

                int temp = i;

                for(j = 0;A[j] != '\0' && B[temp] != '\0';j++,temp++){

                    if(B[temp] != A[j]){
                        //printf("break\n");
                        break;
                    }

                    //printf("==\n");
                }

                if(A[j] == '\0')
                    count++;
            }
        }

        printf("%d\n",count);
    }

    return 0;
}
目录
相关文章
|
8月前
|
算法 测试技术 C#
【动态规划】【字符串】C++算法:正则表达式匹配
【动态规划】【字符串】C++算法:正则表达式匹配
|
人工智能 Java 机器人
掌握正则验证字串符,轻松搞定字符串匹配
正则验证字串符是一种强大的工具,可以帮助程序员在处理字符串时轻松进行复杂匹配。本文将介绍正则表达式的概念、语法和在编程中的应用,并通过实例演示如何使用正则表达式进行字符串匹配、替换和提取等操作。
|
6月前
|
算法 Java
KMP算法详解及其在字符串匹配中的应用
KMP算法详解及其在字符串匹配中的应用
|
算法
字符串匹配算法(上)
字符串匹配算法(上)
89 0
ccfcsp201409-3 字符串匹配
ccfcsp201409-3 字符串匹配
|
算法 Python
字符串匹配 - KMP算法
字符串匹配 - KMP算法
71 0
1355:字符串匹配问题(strs)
1355:字符串匹配问题(strs)
107 0
|
算法
字符串匹配——kmp算法
字符串匹配——kmp算法
|
存储 算法 JavaScript
字符串匹配类的问题,尝试正则
字符串匹配类的问题,尝试正则
105 0
|
算法 C++
Horspool 字符串匹配算法
Horspool 字符串匹配算法对Boyer-Moore算法的简化算法。 Horspool 算法是一种基于后缀匹配的方法,是一种“跳跃式”匹配算法,具有sub-linear亚线性时间复杂度。 Horspool 算法:   对于每个搜索窗口,该算法将窗口内的最后一个字符和模式串中的最后一个字符进行比较。
1541 0