题解 | #密码验证合格程序#

密码验证合格程序

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

import re
import sys

while True:
    try:
        num = 0
        strs = input()
        if len(strs) <= 8:
            print("NG")
            continue
        else:

            if re.search("\d+", strs):
                num += 1
            if re.search("[a-z]", strs):
                num += 1
            if re.search("[A-Z]", strs):
                num += 1
            if re.search("\\W", strs):
                num += 1

        if num < 3:
            print("NG")
            continue
        else:
            flag=True
            for i in range(len(strs) - 2):
                for j in range(i + 2, len(strs)):
                    substring = strs[i:j + 1]
                    pattern = r"(.{3,}).*\1"
                    if not re.search(pattern, strs):
                        print("OK")
                        flag=False
                        break 
                if not flag:
                    break
            if flag:
                print("NG")
                continue
    except:
        break

可以优化让代码更简洁,省事我就直接贴了

全部评论

相关推荐

2024-12-26 13:00
太原理工大学 Java
会飞的猿:简历没啥大问题啊,感觉是缺少了实习经历。多投投先找个中小厂过渡一下吧
点赞 评论 收藏
分享
02-19 19:57
门头沟学院 Java
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务