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

密码验证合格程序

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

```def check(s):
    if len(s) <= 8 :
        return False
    kind = [0, 0, 0, 0]
    for i in s:
        if i.isupper():
            kind[0] = 1
        elif i.islower():
            kind[1] = 1
        elif i.isdigit():
            kind[2] = 1
        else:
            kind[3] = 1
    if sum(kind) < 3:
        return False
    dic = {}
    for i in range(len(s) - 3):
        if s[i:i+3] not in dic:
            dic[s[i:i+3]] = 1
        else:
            dic[s[i:i+3]] += 1
    for j in dic:
        if dic[j] > 1:
            return False

while True:
    try:
        s = input()
        res = check(s)
        if res == False:
            print('NG')
        else:
            print('OK')
    except:
        break
全部评论
没有排除空格和空格呀
点赞 回复 分享
发布于 2022-06-08 22:56
如果用一位一位遍历的话,有的情况会误判。比如:12121ABssd#¥09,这个应该是OK的。
点赞 回复 分享
发布于 2022-03-28 16:09
秀,这是我看得懂的代码,抄下来
点赞 回复 分享
发布于 2022-02-20 15:36

相关推荐

生命诚可贵:先不说内容怎么样 排版就已经太差劲了 第一眼看不到重点,第二眼已经没有再看的耐心了, 篇幅占的太满了 字体不要用灰色 观感不好 想重点突出的黑色加粗就可以了 多列要点 少些大段的句子 项目经历把项目用的技术要点列出来,光写个python plc什么的太宽泛了 自我评价也有点偏多
点赞 评论 收藏
分享
运营3年修炼中接简历辅导:你的科研项目经历里,只写了你的动作,没有写你的思考和成果,不要只写使用什么进行了什么,这等于罗列你的任务,简历是为了突出你的优秀,你在什么样的任务背景下,克服了什么样的困难,针对性地做了哪些事情,最后达成了什么成果(用数据体现你的成果和效率)
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务