题解 | #密码验证合格程序#
密码验证合格程序
https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) { BufferedReader r = new BufferedReader(new InputStreamReader(System.in)); String a; char[] chs; int i, j, n1, n2, n3, n4; boolean repet1; try { while ((a = r.readLine()) != null && !a.isEmpty()) { chs = a.toCharArray(); if (chs.length <= 8) { System.out.println("NG"); continue; } i = 0; n1 = 0; n2 = 0; n3 = 0; n4 = 0; while (i < chs.length) { if (((chs[i] - 'a') | ('z' - chs[i])) > 0) n1 = 1; else if (((chs[i] - 'A') | ('Z' - chs[i])) > 0) n2 = 1; else if (((chs[i] - '0') | ('9' - chs[i])) > 0) n3 = 1; else n4 = 1; i++; } if ((n1 + n2 + n3 + n4) < 3) { System.out.println("NG"); continue; } i = 2; repet1 = false; while (i < chs.length - 1) { j = i + 1; while (j < chs.length) { if (chs[i - 2] == chs[j - 2] && chs[i - 1] == chs[j - 1] && chs[i] == chs[j]) { repet1 = true; break; } j++; } if (repet1) break; i++; } if (repet1) { System.out.println("NG"); continue; } System.out.println("OK"); } } catch (IOException e) { throw new RuntimeException(e); } } }