返回首页 返回题库

加密

C++ 简单 GESP三级真题 #循环#模拟

题目描述

题面描述

小杨同学有一串数字,想把它们变成另一串数字,这个过程叫做加密。

他有一本密码本,密码本告诉你:

每个数字应该变成哪个数字。


数字一共有10个:0、1、2、3、4、5、6、7、8、9


密码本会依次告诉你:

0要变成什么

1要变成什么

2要变成什么

……

9要变成什么

请你按照密码本,把原来的每个数字都换成新的数字,然后输出。


输入格式

输入共有3行。

第一行:一个整数,表示有多少个数字需要加密;

第二行:这些需要加密的数字;

第三行:密码本,一共10个数字。


这10个数字的意思是:

第1个数字:表示0加密后变成什么;

第2个数字:表示1加密后变成什么;

第3个数字:表示2加密后变成什么;

……

第10个数字:表示9加密后变成什么。


输出格式

输出加密后的数字。

也就是:把输入第二行里的每个数字,都按照输入第三行的密码本换掉后输出。

样例1

输入:

7
0 2 0 3 4 1 9
9 0 1 2 3 4 5 6 7 8

输出:

9 1 9 2 3 0 8 

样例解释

第二行要加密的数字是:0 2 0 3 4 1 9

第三行密码本是:9 0 1 2 3 4 5 6 7 8

它的意思是:

0变成9

1变成0

2变成1

3变成2

4变成3

5变成4

6变成5

7变成6

8变成7

9变成8


所以:

0变成9

2变成1

0变成9

3变成2

4变成3

1变成0

9变成8

最后得到:9 1 9 2 3 0 8

数据范围

需要加密的数字个数不超过20000个,且均为0到9;密码本中的数字不重复,且均为0到9。


时间限制

1.0 s

内存限制

512.0 MB

💡 查看提示(先自己想一想再看)
考察数组存储密码本、循环遍历输入数字、按索引替换输出的知识点。注意输入的数字是整数类型,直接将其作为密码本数组的下标即可获取加密后的数字,最后按要求输出并保留空格。
⚙ 开始做这道题 0 人做过 · 2 收藏 · 15 浏览

讨论(0)