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

密码验证合格程序

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))
题解-数据结构与算法 文章被收录于专栏

小菜鸟的题解

全部评论

相关推荐

09-01 16:46
已编辑
门头沟学院 Java
mmvvpp:错了!!给了offer之后还有试用期,试用期过了就完事了?错了!还有每个季度的kpi考核,拿一个c就等着被劝退。那我好好干不拿c不就完了?错了!最多三年劳动合同到期,续不续期未知数。每年都有1800w毕业生毕业,今年你是小萌新蜜月期,明年你是老油条,长江后浪推前浪,前浪死在沙滩上。这就是——互联网!
秋招的破防瞬间
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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