rambless

字符串通配符

https://www.nowcoder.com/practice/43072d50a6eb44d2a6c816a283b02036

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            //除了*和?,如果不存在,则一定false
            String reg = in.nextLine().toLowerCase();
            String str = in.nextLine().toLowerCase();
            match(reg, str);
        }
    }

    private static void match(String reg, String str) {
        boolean[][] dp = new boolean[reg.length()+1][str.length()+1];
        //首列初始化
        dp[0][0] = true;
        for(int i=0; i<reg.length(); i++) {
            if(reg.charAt(i)=='*') {
                dp[i+1][0] = true;
            } else {
                break;
            }
        }
        //从第一列开始
        char r, s;
        for(int i=0; i<reg.length(); i++) {
            r = reg.charAt(i);
            for(int j=0; j<str.length(); j++) {
                s = str.charAt(j);
                //如果字符相同
                if(r==s) {
                    dp[i+1][j+1] = dp[i][j];
                }
                //如果是'?'
                if(r=='?' && (Character.isDigit(s) || (97<=s && s<=122))) {
                    dp[i+1][j+1] = dp[i][j];
                }
                //如果是'*'
                if(r=='*') {
                    dp[i+1][j+1] = dp[i+1][j] || dp[i][j+1] || dp[i][j];
                }
            }
        }
        System.out.println(dp[reg.length()][str.length()]);
    }
}

全部评论

相关推荐

04-02 10:09
门头沟学院 Java
用微笑面对困难:这里面问题还是很多的,我也不清楚为啥大家会感觉没啥问题。首先就是全栈开发实习9个月的内容都没有java实习生的内容多,1整个技术栈没看出太核心和难点的内容,感觉好像被拉过去打杂了,而且全栈基本上很容易被毙。里面能问的bug是在太多了比如L:继承 BaseMapper 可直接使用内置方法’。请问你的 BaseMapper 是如何扫描实体类注解如果瞬时产生 100 个上传任务,MySQL 的索引设计是否会有瓶颈?你做过分库分表或者索引优化吗?全栈的内容可以针对动态难点去搞,技能特长写在下面吧,你写了这么多技能,项目和实习体现了多少?你可以在项目里多做文章然后把这个放下去,从大致来看实习不算太水,有含金量你也要写上内容针对哨兵里面的节点变化能问出一万个问题,这个很容易就爆了。
提前批简历挂麻了怎么办
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务