题解 | 密码验证合格程序

密码验证合格程序

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

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner re = new Scanner(System.in);
        while (re.hasNextLine()) {
            String pw = re.nextLine();
            if (pw.length() < 8) {
                System.out.println("NG");
                continue;
            }
            boolean b = false, s = false, n = false, o = false, sp = true;
            for (int i = 0; i < pw.length(); i++) {
                if (i < pw.length() - 5 &&
                        pw.substring(i + 3, pw.length()).contains(pw.substring(i, i + 3))) {
                    sp = false;
                    break;
                } else {
                    char t = pw.charAt(i);
                    if ('A' <= t && t <= 'Z') {
                        b = true;
                    } else if ('a' <= t && t <= 'z') {
                        s = true;
                    } else if ('0' <= t && t <= '9') {
                        n = true;
                    } else if (t != ' ' && t != '\n') {
                        o = true;
                    }
                }
            }
            if (sp == false) {
                System.out.println("NG");
                continue;
            } else {
                int sum = 0;
                if (b == true) sum++;
                if (s == true) sum++;
                if (n == true) sum++;
                if (o == true) sum++;
                if (sum >= 3) System.out.println("OK");
                else System.out.println("NG");
            }
        }
    }
}

全部评论

相关推荐

想干测开的tomca...:这份简历是“大一新生硬凹资深后端”的典型反面教材,槽点离谱到能让面试官直接笑出声: ### 1. 「年龄+入学时间」和项目复杂度完全脱节,可信度直接归0 你2024年7月才入学(现在刚读了1年多),19岁的大一新生,能把Vue3+Spring Boot+ShardingSphere+K8s+AI这些技术全塞进两个项目里?别说实际开发,光把这些技术的文档看完都得半年——这不是“能力强”,是“把招聘JD里的技术词全抄过来造假”,明摆着没碰过实际代码
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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