作者 黄龙军
单位 绍兴文理学院
信息安全很重要,特别是密码。给定一个5位的正整数n和一个长度为5的字母构成的字符串s,加密规则很简单,字符串s的每个字符变为它后面的第k个字符,其中k是n的每一个数位上的数字。第一个字符对应n的万位上的数字,最后一个字符对应n的个位上的数字。简单起见,s中的每个字符为ABCDE中的一个。
输入格式:
测试数据有多组,处理到文件尾。每组测试数据在一行上输入非负的整数n和字符串s。
输出格式:
对于每组测试数据,在一行上输出加密后的字符串。
输入样例:
12345 ABCDE
输出样例:
BDFHJ
来源:
[1] 黄龙军, 等. 大学生程序设计竞赛入门—C/C++程序设计(微课视频版), 北京:清华大学出版社, 2020.11. ISBN:9787302564744
[2] 黄龙军.程序设计竞赛入门(Python版),北京:清华大学出版社,2021.4. ISBN:9787302571230
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <stdio.h>
int main()
{
int n,a,b,c,d,e;
char s[5];
while(scanf("%d %s",&n,s) != EOF){
a = (n/10000)%10;//万位数字
b = (n/1000)%10;//千位数字
c = (n/100)%10;//百位数字
d = (n/10)%10;//十位数字
e = (n/1)%10;//个位数字
printf("%c%c%c%c%c\n",(int)s[0]+a,(int)s[1]+b,(int)s[2]+c,(int)s[3]+d,(int)s[4]+e);
//字符串与整型的加法,输出字符型
a=0;b=0;c=0;d=0;e=0;//a,b,c,d,e重新赋初值为0,为了后续数据测试的准确性
}
return 0;
}