题目
密码要求:
1.长度超过8位
2.包括大小写字母.数字.其它符号,以上四种至少三种
3.不能有相同长度大于2的子串重复
输入描述:
一组或多组长度超过2的子符串。每组占一行
输出描述:
如果符合要求输出:OK,否则输出NG
示例
输入
021Abc9000
021Abc9Abc1
021ABC9000
021$bc9000
输出
OK
NG
NG
OK
代码:
try:
while True:
str = input()
length = len(str)
if length > 8:
kind = [0,0,0,0]
flag = 0
for i in range(length):
if str[i].isdigit():
kind[0] = 1
elif str[i].isupper():
kind[1] = 1
elif str[i].islower():
kind[2] = 1
else:
kind[3] = 1
if flag == 0 and i < length-3:
if str.count(str[i:i+3]) > 1:
flag = 1
break
if sum(kind) >= 3 and flag == 0:
print('OK')
continue
print('NG')
except:
pass