2026年6月GESP真题及题解(C++三级):加密
题目描述小杨同学有一串数字,想把它们变成另一串数字,这个过程叫做加密 。 他有一本密码本 ,密码本告诉你:每个数字应该变成哪个数字。 数字一共有10 1010个:0 00、1 11、2 22、3 33、4 44、5 55、6 66、7 77、8 88、9 99 。 密码本会依次告诉你: 请你按照密码本,把原来的每个数字都换成新的数字,然后输出。 输入共有3 33 行。 第一行:一个整数,表示有多少个数字需要加密; 第二行:这些需要加密的数字; 第三行:密码本,一共10 1010 个数字。 这10 1010 个数字的意思是: 输出加密后的数字。 也就是:把输入第二行里的每个数字,都按照输入第三行的密码本换掉后输出。 第二行要加密的数字是: 0 2 0 3 4 1 9 0 \ 2 \ 0 \ 3 \ 4 \ 1 \ 90203419 第三行密码本是: 9 0 1 2 3 4 5 6 7 8 9 \ 0 \ 1 \ 2 \ 3 \ 4 \ 5 \ 6 \ 7 \ 89012345678 它的意思是: 所以: 最后得到: 9 1 9 2 3 0 8 9 \ 1 \ 9 \ 2 \ 3 \ 0 \ 89192308 需要加密的数字个数不超过20000 2000020000个,且均为0 00到9 99;密码本中的数字不重复,且均为0 00到9 99 。 本题核心是查表映射 。 复杂度 :时间 O(n),空间 O(n)(存储原始数字,n≤20000)。 https://edu.csdn.net/lecturer/7901 点击跳转 https://edu.csdn.net/course/detail/40437 点击跳转 https://edu.csdn.net/course/detail/41081 点击跳转 CSP信奥赛C++动态规划: https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转 CSP信奥赛C++标准模板库STL: https://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转 信奥赛C++提高组csp-s知识详解及案例实践: https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转 信奥赛C++普及组CSP-J一等奖通关刷题题单及题解: https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转 信奥赛C++普及组csp-j初赛&复赛真题题解(持续更新): https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转 信奥赛C++提高组csp-s初赛&复赛真题题解(持续更新): https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转 GESP(C++ 一级+二级+三级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转 GESP(C++ 四级+五级+六级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转 GESP(C++ 七级+八级)真题题解(持续更新): https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转
输出格式
输出 17 0 2 0 3 4 1 9 9 0 1 2 3 4 5 6 7 8
说明/提示9 1 9 2 3 0 8思路分析
n,表示需要加密的数字个数。n个数字(每个都是 0~9),存入数组a。p,其中p[i]表示数字i加密后的结果。a[i],将其替换为p[a[i]]并输出。代码实现
#includeusingnamespacestd;intn,a[20010];//原始序列intp[10];// 密码本intmain(){cin>>n;for(inti=1;i<=n;i++)cin>>a[i];// 读入原始序列for(inti=0;i<=9;i++)cin>>p[i];// p[i]表示i变成什么for(inti=1;i<=n;i++){// 遍历每个原始数字cout<<p[a[i]]<<" ";// 输出加密后的数字}return0;}功能分析
cin连续读取,忽略空白符,正确获取全部数据。p下标对应原数字,值对应加密后数字,映射关系清晰。p[a[i]]得到新数字并输出。各种学习资料,助力大家一站式学习和提升!!!
#includeusingnamespacestd;intmain(){cout<<"########## 一站式掌握信奥赛知识! ##########";cout<<"############# 冲刺信奥赛拿奖! #############";cout<<"###### 课程购买后永久学习,不受限制! ######";return0;}【秘籍汇总】(完整csp信奥赛C++学习资料):
1、csp/信奥赛C++,完整信奥赛系列课程(永久学习):2、CSP信奥赛C++竞赛拿奖视频课:3、csp信奥赛高频考点知识详解及案例实践:4、csp信奥赛冲刺一等奖有效刷题题解:5、GESP C++考级真题题解:· 文末祝福 ·
#includeusingnamespacestd;intmain(){cout<<"跟着王老师一起学习信奥赛C++";cout<<" 成就更好的自己! ";cout<<" csp信奥赛一等奖属于你! ";return0;}