• 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]));
    		}
    	}
  • 相关阅读:
    JS写游戏
    为运算表达式设计优先级
    原子的数量
    二叉搜索树的范围和
    所有可能的满二叉树
    有效的井字游戏
    站在对象模型的尖端
    执行期语意学
    构造、析构、拷贝语意学
    [CSP-S模拟测试]:序列(二分答案+树状数组)
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152030.html
Copyright © 2020-2023  润新知