#D0019. 键盘还原

键盘还原

题目描述

以下是小明键盘上三行键盘的布局:

qwertyuiop
asdfghjkl;
zxcvbnm,./

小明在打字的时候不小心产生的一个按键的偏移。也就是说,小明在想要打某个按键的时候他实际按的是这个按键右边的那个按键。

比如:当小明想要打 q 时他实际打出来的是 w;当小明想要打 w 时他实际打出来的是 e;当小明想要打 e 时他实际打出来的是 r;当小明想要打 v 时他实际打出来的是 b;……

本题中假设小明不会去打键盘上每一行最右边的那个按键。

现在给你一个字符串,是小明按照上述规则实际打出来的字符串。请你还原出小明原本想要打的字符串。

输入格式

输入共一行,包含一个字符串 ss

ss 仅由题目描述中每一行非首字符构成,且长度不超过 100000100000

输出格式

输出一行字符串,为小明原本想要打的字符串。

input

s;;upimrrfod;pbr

output

allyouneedislove

说明/提示

数据规模与约定

s|s| 表示字符串 ss 的长度,则:

  • 对于 30%30\% 的数据,s10|s| \le 10
  • 对于 60%60\% 的数据,s1000|s| \le 1000
  • 对于 100%100\% 的数据,1s1000001 \le |s| \le 100000ss 仅由键盘的三行中非首字符(即 wertyuiopsdfghjkl;xcvbnm,./)组成。