题解 | 密码验证合格程序

密码验证合格程序

https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) { 
            String str = in.nextLine();
            int length = str.length();
            if (length < 8) {// 题目错了,应该是不超过8位
                System.out.println("NG");
                continue;
            }
            int numCnt = 0;
            int spCnt = 0;
            int loCnt = 0;
            int upCnt = 0;
            for (int i = 0; i < length; i++ ) {
                char c = str.charAt(i);
                if (Character.isDigit(c)&&numCnt==0) {
                    numCnt=1;
                } else if(Character.isUpperCase(c)&&upCnt==0){
                    upCnt=1;
                } else if(Character.isLowerCase(c)&&loCnt==0){
                    loCnt=1;
                }else if(spCnt==0){
                    spCnt=1;
                }
            }
            if(numCnt+spCnt+loCnt+upCnt<3){
                System.out.println("NG");
                continue;
            }
            boolean flag = false;
            for (int i = 0; i < length - 4; i++ ) {
                String firstSon = str.substring(i,i+3);// length-4 避免指针超出范围
                String tmp = str.substring(i+3);
                if(tmp.contains(firstSon)){
                    flag=true;
                    System.out.println("NG");
                    break;
                }
            }
            if(flag==true){
                    continue;
            }
            System.out.println("OK");
        }
    }
}

全部评论

相关推荐

云边有个小卖铺儿:校招生违约率低,所以我要高😂
点赞 评论 收藏
分享
神哥不得了:神哥来啦~1.建议不要包装,很容易问穿2.没日常也能找到暑期3.简历模板换一下,字体和版式看着好难受,而且最好压缩到一页,技术的倒数第2和3重复啦,项目建议换两个高质量的上去,如果时间够的话,八股就把高频top50的题目多巩固几遍,吃透,注意不要找假高频,这样绝对能找到暑期
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务