题解 | #密码强度等级#
密码强度等级
http://www.nowcoder.com/practice/52d382c2a7164767bca2064c1c9d5361
暴力解法
while True:
    try:
        pc = input()
        grade = alp = res = num = sym = 0
        if len(pc) <= 4:
            grade += 5
        elif len(pc) <= 7:
            grade += 10
        else:
            grade += 25
        for i in pc:
            if i.islower():
                res += 1
                break
        for i in pc:
            if i.isupper():
                res += 1
                break
        if res == 2:
            alp += 20
        elif res == 1:
            alp += 10
        grade += alp
        for i in pc:
            if i.isdigit():
                num += 1
            elif not i.isalpha():
                sym += 1
        if num == 1:
            grade += 10
        elif num > 1:
            grade += 20
        if sym == 1:
            grade += 10
        elif sym > 1:
            grade += 25
        if alp == 20 and num > 0 and sym >0:
            grade += 5
        elif alp == 10 and num > 0 and sym >0:
            grade += 3
        elif alp == 10 and num > 0:
            grade += 2
        if grade >= 90:
            print("VERY_SECURE")
        elif grade >= 80:
            print("SECURE")
        elif grade >= 70:
            print("VERY_STRONG")
        elif grade >= 60:
            print("STRONG")
        elif grade >= 50:
            print("AVERAGE")
        elif grade >= 25:
            print("WEAK")
        else:
            print("VERY_WEAK")
    except:
        break
 查看21道真题和解析
查看21道真题和解析
