题目描述
信息时代,信息的安全性至关重要,信息的加密和解密能有效的提高通信的安全性。Carl 和 justforu 在通信是就用到了这种手段,他们在通信过程中对出现的 6 位正整数,会对其进行加密,然后再发送,另一方接受到以后就对其进行解密,然后得到正确的数字。他们的加密方法有以下特点:
1. 将这个整数的每一位数字加一个整数 $d$ $(0 \le d \le 9)$,然后除以 $10$ 取余。
2. 将第一位与第六位交换位置,第二位与第五位交换位置,第三位与第四位交换位置。
注:加密以后出现前缀 $0$,$0$ 依然要求输出。如 $d=5$ 时 $\tt{111115}$ 加密后是 $\tt{066666}$ 而不是 $\tt{66666}$;加密以前也可能有前缀 $0$。
现在 Carl 请你帮忙编写一个解码的程序,能够在已知 $d$ 和接收到的数字 $a$($a$ 是 6 位正整数)的情况下得到加密前的数字。
输入格式
两个整数 $d, a$。
- $0 \le d \le 9$
- $a$ 是一个可能带有前缀 $0$ 的 6 位数
提示
0. 六位密码可以用字符串的形式读入,如:
```cpp
char pwd[7];
scanf("%s", pwd);
```
1. 原来要发送的 $\tt{080976}$,经过 $d=5$ 加密以后就成了 $\tt{124535}$,也就是收到的是数字,所以输出的数字为原来的 $\tt{080976}$。
2. 对整数 $a$ 除以 $10$ 取余操作为:$a=a\%10$。比如 $a=12$,除以 $10$ 取余后为 $a=12\%10=2$。
3. 字符串和数字可以互换,比如 `'3'==3+'0'`,`'b'==1+'a'`。这是因为字符在 ASCII 码中是连续储存的。
来源
The 11th ZJNU Anniversary Contest