题解 | #字符串加密#

字符串加密

https://www.nowcoder.com/practice/e4af1fe682b54459b2a211df91a91cf3

key=input().upper()#输入key变大写
info=list(input())
a=[]#大写字母表
b=[]#简化后key
r=[]#记录换大小写的位置
dic={}
for i in range(65,91):#创建大写字母表
    a.append(chr(i))
for j in range(len(info)):#把明文变成大写并记录改变的位置
    if info[j].islower():
        r.append(j)
        info[j]=info[j].upper()
for k in key:#去掉key的重复字母
    if not k in b:
        b.append(k)
for n in range(26):#给key补上字母表
    if a[n] not in b:
        b.append(a[n])
for each in range(26):#创建字典
    dic[a[each]]=b[each]

for l in range(len(info)):#映射字典并改回原来的大小写
    info[l]=dic[info[l]]
    if l in r:
        info[l]=info[l].lower()
print(''.join(info))

全部评论

相关推荐

牛客54175811...:今年对双非很难。1、争取一段大厂实习经历,2、狂磕八股,3、再跑个难度提升的项目。
点赞 评论 收藏
分享
迷茫的大四🐶:都收获五个了,兄弟那还说啥,不用改了,去玩吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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