牛客-计科复试题-WERTYU

用python很方便就能解决这道题:字典+zip()。
可能有更好的方案。


right_to_left = {}
a1 = ['`'] + [str(digit) for digit in range(1, 10)] + ['0', '-', '=']
a1 = dict(zip(a1[1:], a1[:-1]))
a2 = ['~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+']
a2 = dict(zip(a2[1:], a2[:-1]))
right_to_left.update(a1)
right_to_left.update(a2)

b1 = ['Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', '[', ']', '\\']
b1 = dict(zip(b1[1:], b1[:-1]))
b2 = ['P', '{', '}', '|']
b2 = dict(zip(b2[1:], b2[:-1]))
right_to_left.update(b1)
right_to_left.update(b2)

c1 = ['A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', ';', "'"]
c1 = dict(zip(c1[1:], c1[:-1]))
c2 = ['L', ':', '"']
c2 = dict(zip(c2[1:], c2[:-1]))
right_to_left.update(c1)
right_to_left.update(c2)

d1 = ['Z', 'X', 'C', 'V', 'B', 'N', 'M', ',', '.', '/']
d1 = dict(zip(d1[1:], d1[:-1]))
d2 = ['M', '<', '>', '?']
d2 = dict(zip(d2[1:], d2[:-1]))
right_to_left.update(d1)
right_to_left.update(d2)
right_to_left.update({' ': ' '})

while True:
    try:
        line = input()
        if line == '':
            break
        ans = ''
        for i in range(len(line)):
            ans = ans + right_to_left[line[i]]
        print(ans)
    except:
        break

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值