import java.util.Scanner;
public class CodeRange {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
getCodeRange(str);
}
private static void getCodeRange(String str) {
int len = str.length();
int isUpperChar = 0;
int isLowerChar = 0;
int isDigit = 0;
int otherLetter = 0;
int sum = 0;
char[] ch = str.toCharArray();
for (char c : ch) {
if(Character.isDigit(c))
isDigit++;
else if(Character.isUpperCase(c))
isUpperChar++;
else if(Character.isLowerCase(c))
isLowerChar++;
else
otherLetter++;
}
//len
if(len<=4)
sum += 5;
else if(len<=7)
sum += 10;
else if(len >= 8)
sum += 25;
//character
if(isUpperChar == 0 || isLowerChar == 0)
sum += 10;
else if(isUpperChar > 0 && isLowerChar > 0)
sum += 20;
//digit
if(isDigit == 1)
sum += 10;
else if(isDigit > 1)
sum += 20;
//otherletter
if(otherLetter == 1)
sum += 10;
else if(otherLetter > 1)
sum += 25;
//reward
if(isUpperChar>0 || isLowerChar > 0 && isDigit > 0)
sum += 2;
else if(isUpperChar > 0 || isLowerChar > 0 && isDigit > 0 && otherLetter > 0)
sum += 3;
else if(isUpperChar>0 && isLowerChar > 0 && isDigit > 0 && otherLetter > 0)
sum += 5;
if(sum >=0 && sum < 25)
System.out.println("VERY_WEAK");
else if(sum >= 25 && sum <50)
System.out.println("WEAK");
else if(sum >= 50 && sum <60)
System.out.println("AVERAGE");
else if(sum >= 60 && sum < 70)
System.out.println("STRONG");
else if(sum >= 70 && sum < 80)
System.out.println("VERY_STRONG");
else if(sum >= 80 && sum < 90)
System.out.println("SECURE");
else if(sum >= 90)
System.out.println("VERY_SECURE");
}
}
注意:全部为大写字母或者小写字母的前提是字符串有字幕,但并不是字符串每一个元素都是字母;
密码强度等级
最新推荐文章于 2024-07-17 10:49:00 发布