美团测开笔经 2022.8.28
神奇字符
第一行分别是长串和短串的长度
第2行有多少对字符,和第三行相同,*默认匹配一切
输入
7 3 a*ba*bb abb输出
3代码
import java.util.Scanner; public class Main1 { public static boolean compare(String S, String s){ char[] a=S.toCharArray(); char[] b=s.toCharArray(); for(int i=0;i <b.length;i++){ if(a[i]==b[i] ||a[i]=='*') continue; else return false; } return true; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int m = sc.nextInt(); String S=sc.next(); String s=sc.next(); int res=0; for(int i=0;i<n-m+1;i++){ if(compare(S.substring(i,i+m),s)){ res++; } } System.out.println(res); } }