题解 | #密码验证合格程序# Python3:各种复杂判断

密码验证合格程序

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

import sys

if __name__ == "__main__":
    for line in sys.stdin:
        s = line.strip()
        n = len(s)
        # 判断长度
        if n > 8:
            # 判断符号种类
            char_type = set()
            for c in s:
                if c.islower():
                    char_type.add("lower")
                elif c.isupper():
                    char_type.add("upper")
                elif c.isnumeric():
                    char_type.add("numeric")
                else:
                    char_type.add("other")
            if len(char_type) >= 3:
                # 判断子串重复
                left = 0
                flag = False
                while left < n - 4 and not flag:
                    right = left + 1
                    while right < n - 1 and not flag:
                        if s[left] == s[right]:
                            cnt = 0
                            i, j = left, right
                            while i < n and j < n and s[i] == s[j]:
                                i += 1
                                j += 1
                                cnt += 1
                                if cnt > 2:
                                    flag = True
                                    break
                        right += 1
                    left += 1
                if flag:
                    print("NG")
                else:
                    print("OK")
            else:
                print('NG')
        else:
            print('NG')

#23届找工作求助阵地##软件开发薪资爆料##我的实习求职记录##你们的毕业论文什么进度了#
算法之路 文章被收录于专栏

有关数据结构、算法等的文章

全部评论

相关推荐

Yushuu:你的确很厉害,但是有一个小问题:谁问你了?我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了😆
点赞 评论 收藏
分享
AFBUFYGRFHJLP:直接去美帝试试看全奖phd吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务