zoukankan      html  css  js  c++  java
  • Binary String Matching string(stl) find()函数的应用 完全不用kmp

    题目来源:http://acm.nyist.net/JudgeOnline/problem.php?pid=5

    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 


    分析: string 中的find(string&,location) ,在一个字符串中查找指定的单个字符或字符组。如果找到,返回首次匹配的开始位置,如果没有找到匹配的内容,则返回 string::npos。,一般有2个输入参数,一个是待查询的字符串,一个是查询的起始位置,默认起始位置为0.
    代码如下:
    #include <cstdlib>
    #include <cstring>
    #include <algorithm>
    #include <cstdio>
    #include <cmath>
    #include <iostream>
    #include <vector>
    #include<string>
    #include<cstring>
    #include<string.h>
    #include<set>
    #include<queue>
    using namespace std;
    typedef long long ll;
    
    
    int main()
    {
    
        int t,ans;
        cin>>t;
        while(t--)
        {
            string p,t;
            int num=0;
            cin>>p>>t;
            ans=t.find(p);
            while(ans!=string::npos)
            {
                num++;
                ans=t.find(p,ans+1);
            }
            cout<<num<<endl;
    
        }
        return 0;
    }
  • 相关阅读:
    Django中多表的增删改查操作及聚合查询、F、Q查询
    路由控制
    路由、视图、模板主要知识点回顾
    创建文件linux
    关于shell,环境变量放置在?
    snprintf和string操作函数
    C/C++的存储区域的划分
    001
    SAMBA服务器
    归并排序原理详解!
  • 原文地址:https://www.cnblogs.com/zn505119020/p/3620155.html
Copyright © 2011-2022 走看看