def find_longest_password(passwords):# 按长度从长到短排序,长度相同按字典序从大到小排序passwords.sort(reverse=True, key=lambda x: (len(x), x))# 将密码本转换为集合,方便快速查找password_set = set(passwords)for password in passwords:# 检查从末尾去掉一位的所有子密码是否都在密码本中valid = Truefor i in range(1, len(password)):if password[:-i] not in password_set:valid = Falsebreakif valid:return passwordreturn ""# 用户自定义输入passwords = input("请输入密码列表(用空格分隔): ").splitprint("最长有效密码:", find_longest_password(passwords))摘要:def find_longest_password(passwords):# 按长度从长到短排序,长度相同按字典序从大到小排序passwords.sort(reverse=True, key=lambda x: (len(x), x))# 将密码本转换为集合,
来源:小高看科技
免责声明:本站系转载,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本站联系,我们将在第一时间删除内容!