题解 | #密码验证合格程序#
密码验证合格程序
https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
//判断是否存在重复字符串
private static boolean reStr(String s){
for(int i=3;i<s.length();i++){
if(s.substring(i).contains(s.substring(i-3,i))){
return false;
}
}
return true;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextLine()) { // 注意 while 处理多个 case
String s=in.nextLine();
if(s.length()<=8){
System.out.println("NG");
continue;
}
int a=0,b=0,c=0,d=0;
boolean err=true;
char[] ch=s.toCharArray();
for(int i=0;i<ch.length;i++){
if(ch[i]>='a'&&ch[i]<='z')
a=1;
else if(ch[i]>='A'&&ch[i]<='Z')
b=1;
else if(ch[i]>='0'&&ch[i]<='9')
c=1;
else if(ch[i]==' '||ch[i]=='\n')
err=false;
else
d=1;
}
if(a+b+c+d<3)
System.out.println("NG");
else if(!err)
System.out.println("NG");
else if(reStr(s))
System.out.println("OK");
else
System.out.println("NG");
}
}
}

