题解 | #字符串加解密#

字符串加解密

https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a

# 拆分出加密前密码 和 加密后密码
original_password = input().strip()
decrypted_password = input().strip()

# 加密
def encrypter(password):
    encrypted_result = []
    for char in password:
        if char.isalpha():
            # 检查大小写,然后反转大小写并且加1
            if char.islower():
                encrypted_result.append(chr(((ord(char) - ord('a') + 1) % 26) + ord('A')))
            else:
                encrypted_result.append(chr(((ord(char) - ord('A') + 1) % 26) + ord('a')))
        elif char.isdigit():
            # 数字 + 1
            encrypted_result.append(str((int(char) + 1) % 10))
        else:
            # 保留其他字符
            encrypted_result.append(char)
    return ''.join(encrypted_result)

# 解密
def decrypter(password):
    decrypted_result = []
    for char in password:
        if char.isalpha():
            # 检查大小写,然后反转大小写并且加1
            if char.islower():
                decrypted_result.append(chr(((ord(char) - ord('a') - 1) % 26) + ord('A')))
            else:
                decrypted_result.append(chr(((ord(char) - ord('A') - 1) % 26) + ord('a')))
        elif char.isdigit():
            # 数字 + 1
            decrypted_result.append(str((int(char) - 1) % 10))
        else:
            # 保留其他字符
            decrypted_result.append(char)
    return ''.join(decrypted_result)

# print最终结果
print(encrypter(original_password))
print(decrypter(decrypted_password))

全部评论

相关推荐

07-11 13:16
湖南工学院 Java
点赞 评论 收藏
分享
那一天的Java_J...:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
nus2201602...:兄弟,你这个简历撕了丢了吧,就是一坨,去找几个项目,理解项目流程,看几遍就是你的了,看看八股就去干了,多看看牛客里别人发出来的简历,对着写,你这写的啥啊,纯一坨
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务