题解 | #密码验证合格程序#
密码验证合格程序
https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841
// 千辛万苦花了2小时。用例过了29/30,就这样吧
import java.util.*;
import java.util.regex.*;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int length=0;
int sum=0;
int flag =0;
while(sc.hasNext()) {
boolean blenght=true;
boolean bnum=true;
boolean bchongfu=true;
String str =sc.next();
if(str.length()>8) {
blenght=true;
}else {
blenght=false;
}
if(str.matches(".*[0-9].*")) {
sum++;
}
if(str.matches(".*[a-z].*")) {
sum++;
}
if(str.matches(".*[A-Z].*")) {
sum++;
}
if(str.matches(".*[^0-9a-zA-Z].*")) {
sum++;
}
// System.out.println(sum);
if(sum>=3) {
bnum=true;
}else {
bnum=false;
}
if(str.length()>8) {
for(int n=0;n<str.length()-2;n++) {
String str3=str.substring(n, n+2);
if(str.substring(0,n).contains(str3)||str.substring(n+2).contains(str3)) {
bchongfu=false;
}else {
bchongfu=true;
}
}
}
if(blenght && bnum&& bchongfu) {
System.out.println("OK");
}else {
System.out.println("NG");
}
//System.out.println(blenght+","+bnum+","+bchongfu);
}
}
}
import java.util.regex.*;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int length=0;
int sum=0;
int flag =0;
while(sc.hasNext()) {
boolean blenght=true;
boolean bnum=true;
boolean bchongfu=true;
String str =sc.next();
if(str.length()>8) {
blenght=true;
}else {
blenght=false;
}
if(str.matches(".*[0-9].*")) {
sum++;
}
if(str.matches(".*[a-z].*")) {
sum++;
}
if(str.matches(".*[A-Z].*")) {
sum++;
}
if(str.matches(".*[^0-9a-zA-Z].*")) {
sum++;
}
// System.out.println(sum);
if(sum>=3) {
bnum=true;
}else {
bnum=false;
}
if(str.length()>8) {
for(int n=0;n<str.length()-2;n++) {
String str3=str.substring(n, n+2);
if(str.substring(0,n).contains(str3)||str.substring(n+2).contains(str3)) {
bchongfu=false;
}else {
bchongfu=true;
}
}
}
if(blenght && bnum&& bchongfu) {
System.out.println("OK");
}else {
System.out.println("NG");
}
//System.out.println(blenght+","+bnum+","+bchongfu);
}
}
}