返回首页 返回题库

移位

C++ 简单 GESP三级真题 #字符串#循环#数学取模

题目描述

小杨学习了加密技术移位,所有大写字母都向后按照一个固定数目进行偏移。偏移过程会将字母表视作首尾相接的环,例如,当偏移量是3的时候,大写字母A会替换成D,大写字母Z会替换成C,总体来看,大写字母表

ABCDEFGHIJKLMNOPQRSTUVWXYZ 会被替换成 DEFGHIJKLMNOPQRSTUVWXYZABC。

注:当偏移量是26的倍数时,每个大写字母经过偏移后会恰好回到原来的位置,即大写字母表

ABCDEFGHIJKLMNOPQRSTUVWXYZ 经过偏移后会保持不变。

输入格式

第一行包含一个正整数n。

输出格式

输出在偏移量为n的情况下,大写字母表ABCDEFGHIJKLMNOPQRSTUVWXYZ移位替换后的结果。

样例1

3


DEFGHIJKLMNOPQRSTUVWXYZABC


样例解释

当偏移量是3的时候,大写字母A会替换成D,大写字母Z会替换成C,总体来看,大写字母表

ABCDEFGHIJKLMNOPQRSTUVWXYZ 会被替换成DEFGHIJKLMNOPQRSTUVWXYZABC。

数据范围

对于全部数据,保证有1≤n≤100。


时间限制

1.0 s

内存限制

512.0 MB

💡 查看提示(先自己想一想再看)
本题考察字符串循环处理、字符的ASCII码运算以及取模运算处理循环偏移的能力。解题思路是遍历26个大写字母,对每个字母计算其偏移后的位置,注意使用模26来保证偏移后的字符仍在大写字母范围内。常见易错点是忘记对偏移量取模26,导致生成的字符超出大写字母的ASCII范围。
⚙ 开始做这道题 3 人做过 · 3 收藏 · 16 浏览

讨论(0)