• 南阳oj 5 Binary String Matching


     

    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<stdio.h>
    #include<string.h>
    int main()
    {
        char a[120],b[1200];
        int ai,bi;
        int t,i,j,k,cut;
        scanf("%d",&t);
        while(t--){
            cut=0;
            scanf("%s%s",&a,b);
            ai=a[0]-'0';
            int len1=strlen(a);
            int len2=strlen(b);
            for(i=1;i<len1;i++){
                ai*=10;
                ai+=a[i]-'0';
            }
            for(i=0;i<len2;i++)
            {
                bi=b[i]-'0';
                for(k=i+1,j=0;j<len1-1;j++,k++)
                {
                    bi*=10;
                    bi+=b[k]-'0';
                }
                if(ai==bi)   cut++;
            }
            printf("%d
    ",cut);
        }
        return 0;
    }


  • 相关阅读:
    oracle增加字段,循环
    mybatis批量插入和更新
    oracle触发器
    Java中<? extends T>和<? super T>的理解
    函数式编程
    mybaitis
    操作word
    服务大厅流程
    jdk动态代理
    操作系统
  • 原文地址:https://www.cnblogs.com/cniwoq/p/6770998.html
Copyright © 2020-2023  润新知