""" 思路:排除所有不合法的情况 """ def check(s): """ 定义判断函数(只要有不合法的情况出现马上返回结果0) """ # 1.排除长度不超过8的情况 if len(s) <= 8: return 0 # 2.排除字符种类少于3种的情况 c = [0, 0, 0, 0] # 分别判断大、小写字母、数字、其它字符是否出现 for i in range(len(s)): if s[i].isupper(): c[0] = 1 elif s[i].islower(): c[1] = 1 elif s[i].isdigit(): c[2] = 1 else: c[3] = 1 if sum(c) < 3: # 字符种类少于3时排除 return 0 # 3.排除出现3个字母重复出现的情况(4个及以上字母重复出现,必然有3个字母重复出现) for i in range(len(s) - 3): if s.count(s[i:i + 3]) > 1: # 统计字符串中出现3个重复字母个数并排除 return 0 while True: try: s = input() if check(s) == 0: print("NG") else: print("OK") except: break