zoukankan      html  css  js  c++  java
  • Binary String Matching

    Binary String Matching

    描述
          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


    Java实现

    	private static int match(String a, String b) {
    		int result = 0;
    		int al = a.length();
    		int bl = b.length();
    		for(int i = 0; i < (bl - al + 1); i++){
    			String sub = b.substring(i, i + al);
    			if(sub.matches(a)){
    				result++;
    			}
    		}
    		return result;
    	}
    	
    	private static void binaryStringMatch() {
    		Scanner sc = new Scanner(System.in);
    		int n = sc.nextInt();
    		String[] a = new String[n];
    		String[] b = new String[n];
    		for(int i = 0; i < n; i++){
    			a[i] = sc.next();
    			b[i] = sc.next();
    		}
    		for(int i = 0; i < n; i++){
    			System.out.println(match(a[i], b[i]));
    		}
    	}
  • 相关阅读:
    ubuntu 安装chrome浏览器
    ubuntu下Xmodmap映射Esc和Ctrl_L
    ubuntu 设置主屏和副屏
    maven 第一次运行报错
    Intellij Idea 配置并发布tomcat项目
    Nginx跨域设置
    Inotify+rsync实现实时数据同步
    Ubuntu-18.04设置开机启动脚本
    CentOS开机自启动/etc/rc.local不执行的解决办法
    ELK之使用kafka作为消息队列收集日志
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152030.html
Copyright © 2011-2022 走看看