改造了一些,正好通过 import java.util.Scanner; public class Main27 { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNext()) { String str = in.nextLine().toLowerCase(); String str1 = in.nextLine().toLowerCase(); System.out.println(isBoolean(str,str1,0,0)); } } static boolean isBoolean(String str,String str1 ,int n,int m){ if (str.length() == n && str1.length() == m){ return true; } if (str.length() == n || str1.length() == m){ return false; } if (str.charAt(n) == str1.charAt(m)){ return isBoolean(str,str1,n+1,m+1); } if (str.charAt(n) == '*' && n+1 !=str.length() && str.charAt(n+1) == '*'){ return isBoolean(str,str1,n+1,m); } if (str.charAt(n) == '?' && ((str1.charAt(m) >= '0' && str1.charAt(m) <= '9')|| (str1.charAt(m) >= 'a' && str1.charAt(m) <= 'z'))){ return isBoolean(str,str1,n+1,m+1); }else if (str.charAt(n) == '*' && ((str1.charAt(m) >= '0' && str1.charAt(m) <= '9')|| (str1.charAt(m) >= 'a' && str1.charAt(m) <= 'z'))){ return isBoolean(str,str1,n,m+1)||isBoolean(str,str1,n+1,m+1)||isBoolean(str,str1,n+1,m); }else { return false; } } }
2

相关推荐

点赞 评论 收藏
分享
牛客网
牛客企业服务