题解 | 密码验证合格程序

import sys
result = []
for s in sys.stdin:
    if s == '\n':
        break
    # 长度判断
    if len(s) < 8:
        result.append('NG')
        continue
    # 四种类型判断
    small_str_num = 0
    big_str_num = 0
    num_num = 0
    other_num = 0
    for i in range(len(s)):
        ascii_str = ord(s[i])
        if ascii_str > 47 and ascii_str < 58:
            num_num = 1
        elif ascii_str > 64 and ascii_str < 91:
            big_str_num = 1
        elif ascii_str > 96 and ascii_str < 123:
            small_str_num = 1
        else:
            other_num = 1
    if num_num + big_str_num + small_str_num + other_num < 3:
        result.append('NG')
        continue
    # 独立子串分析
    same = 0
    for i in range(len(s)-5):
        if s[i:i+3] in s[i+3:]:
            same = 1
            break
    if same == 1:
        result.append('NG')
        continue
    result.append('OK')
for i in result:
    print(i)

全部评论

相关推荐

2024-12-17 16:18
牛客_运营
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务