题解 | 密码验证合格程序

密码验证合格程序

https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841

import sys

def containupper(n):
    for i in n:
        if 65 <= ord(i) <= 90:
            return 1
    return 0

def containlower(n):
    for i in n:
        if 97 <= ord(i) <= 122:
            return 1
    return 0


def containnumber(n):
    for i in n:
        if i.isdigit():
            return 1
    return 0

def containother(n):
    for i in n:
        if (
            33 <= ord(i) <= 47
            or 58 <= ord(i) <= 64
            or 91 <= ord(i) <= 96
            or 123 <= ord(i) <= 126
        ):
            return 1
    return 0


def nosam(n):
    for i in range(len(n) - 3):
        if n[i : i + 3] in n[i + 3 :]:
            return False
    return True

def isok(n):
    if len(n) < 8:
        return "NG"
    x = containupper(n) + containlower(n) + containnumber(n) + containother(n)
    if x < 3:
        return "NG"
    if not nosam(n):
        return "NG"
    return "OK"

while True:
    try:
        n = input()
        print(isok(n))

    except:
        break

全部评论

相关推荐

09-19 12:15
门头沟学院 Java
迷茫的大四🐶:这下是真的打牌了,我可以用感谢信和佬一起打牌吗
点赞 评论 收藏
分享
自来熟的放鸽子能手面...:这个不一定,找hr跟进一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务