zoukankan      html  css  js  c++  java
  • 【ACM】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 

    思路:这个只是简单匹配,要是有时间限制的话,可以用KMP算法处理

     
    #include <iostream>
    #include <string>
    #include <algorithm>
    #include <cmath>
    #include <cstdio>
    
    using namespace std;
    
    
    int main(){
    
        int n;
        cin>>n;
        string a,b;
        while (n--)
        {
            cin>>a>>b;
            int count = 0;
            for (int i = 0 ; i < b.length(); i++)
            {
                int k = i;
                int j = 0;
                while(k<b.length() && j<a.length()){
    
                    if (j==a.length()-1 && b[k]==a[j])
                    {
                        count++;
                    }
                    if (b[k]==a[j])
                    {
                        k++;j++;
                    }else{
                        break;
                    }
    
                }
    
            }
            cout<<count<<endl;
        }
    
        return 0;
    }        
  • 相关阅读:
    curl post
    mysql存储引擎
    梳理版本控制器:SVN和Git比较
    详细说明php的4中开源框架(TP,CI,Laravel,Yii)
    五种常见的 PHP 设计模式
    php+ajax实现跨域单点登录
    laravel
    Gitlab配置webhooks实现自动化部署
    linux CentOs7 安装gitlab
    身份证验证
  • 原文地址:https://www.cnblogs.com/lyc94620/p/9316883.html
Copyright © 2011-2022 走看看