题解 | #密码验证合格程序#

密码验证合格程序

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

import java.util.ArrayList;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc= new Scanner(System.in);
        ArrayList<String> arr = new ArrayList<>();
        while (sc.hasNext()){
            String s =sc.next();
            if(s.length()>=8){
                int[] flag=new int[4];
                //0 大写; 1 小写;2 数字;3其他符号
                for (int i = 0; i < s.length(); i++) {
                    if(s.charAt(i)>='A'&&s.charAt(i)<='Z')
                        flag[0]=1;
                    else if(s.charAt(i)>='a'&&s.charAt(i)<='z')
                        flag[1]=1;
                    else if(s.charAt(i)>='0'&&s.charAt(i)<='9')
                        flag[2]=1;
                    else  flag[3]=1;
                }
                int n=0;
                for (int i : flag) {
                    n+=i;
                }
                if(n<3) arr.add("NG");
                else{
                    //长度大于2的含有相同元素的子串
                    //这里子串不能是自己
                    boolean f=false;
                    for ( int i = 0; i < s.length()-3 ; i++) {
                        if(f) break;
                        for ( int j =i+1 ; j < s.length()-2; j++) {
                            if( s.charAt(i) == s.charAt(j)&&s.charAt(i+1)==s.charAt(j+1)&&s.charAt(i+2)==s.charAt(j+2)){
                                arr.add("NG");
                                f=true;
                                break;
                            }
                        }
                    }
                    if(!f) arr.add("OK");
                }
            }else{
                arr.add("NG");
            }
        }
        arr.forEach(a-> System.out.println(a));
    }
}

全部评论

相关推荐

11-13 20:16
已编辑
厦门理工学院 软件测试
专业嗎喽:硕佬,把学校背景放后面几段,学校背景双非还学院,让人看了就不想往下看。 把实习经历和个人奖项放前面,用数字化简述自己实习的成果和掌握的技能,比如负责项目一次通过率90%,曾4次发现项目潜在问题风险为公司减少损失等等
点赞 评论 收藏
分享
dian3b:挺妙的,如果上纲上线显得不合人心,但是这样以来既能监督适当摸鱼,也有一定的人文关怀。
摸鱼被leader发现了...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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