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

密码验证合格程序

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

用python集合挺方便的

def get_ans(s):
    return 'OK' if (len(s)>8 and three_types(s) and sub_str(s)) else 'NG'

def three_types(s):
    mark=set()
    for i in s:
        if i.islower(): mark.add('lower')
        elif i.isupper(): mark.add('upper')
        elif i.isnumeric(): mark.add('numeric')
        elif i!=' ' or i!='\n': mark.add('else')
    return len(mark)>=3

def sub_str(s):
    mark=set()
    for i in range(len(s)-3):
        if s[i:i+3] not in mark:
            mark.add(s[i:i+3])
        else: return False
    return True

if __name__=='__main__':
    import sys
    lines = []
    while True:
        line = sys.stdin.readline().strip()
        if line == "":
            break
        lines.append(line)
    for item in lines:
        print(get_ans(item))
题解-数据结构与算法 文章被收录于专栏

小菜鸟的题解

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 18:05
哈哈哈哈哈感觉朋友找工作的已经疯掉了,直接上图
码农索隆:真老板娘:“我嘞个去,这不我当年的套路吗
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 12:23
转人工😡
门口唉提是地铁杀:五次握手了
点赞 评论 收藏
分享
那一天的Java_J...:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
07-09 19:25
门头沟学院 Java
这是要把每一个投校招的都开盒吗?
26届之耻将大局逆转:裁人的时候一次性追回餐费
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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