题解 | 密码验证合格程序
密码验证合格程序
https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841
import sys
def checkPassword(s):
if len(s)<=8:
return 'NG'
categories = 0
if any(c.isdigit() for c in s):
categories += 1
if any(c.islower() for c in s):
categories += 1
if any(c.isupper() for c in s):
categories += 1
if any(33<=ord(c)<=47 or 58<=ord(c)<=64 or 91<=ord(c)<=96 or 123<=ord(c)<=126 for c in s):
categories += 1
if categories < 3:
return 'NG'
for i in range(len(s)-2):
x = s[i:i+3]
if x in s[i+3:]:
return "NG"
return "OK"
results=[]
lines=sys.stdin.readlines()
for line in lines:
ans=checkPassword(line)
results.append(ans)
for result in results:
print(result)
