#LS1002. 凯撒密码

凯撒密码

题目描述

凯撒密码是一种简单的替换加密方式:把英文字母按照字母表向后移动固定的位数。

现在给定一个整数 k 和一个字符串 s,请你对字符串 s 进行凯撒加密:

对于大写字母 A 到 Z,向后移动 k 位,超过 Z 后回到 A;

对于小写字母 a 到 z,向后移动 k 位,超过 z 后回到 a;

其他字符,包括空格、数字、标点符号等,保持不变。

输入格式

共两行。

第一行一个整数 k,表示加密时字母向后移动的位数。

第二行一个字符串 s,表示需要加密的原文。字符串中可能包含空格。

输出格式

输出一行,表示加密后的字符串。

3
Hello, World!
Khoor, Zruog!

数据范围与约定

对于全部数据,保证有 0 ≤ k ≤ 10^9,1 ≤ |s| ≤ 1000。

字符串 s 仅包含 ASCII 可见字符和空格,可能包含大小写英文字母、数字、空格、标点符号等。

提示

k 可能很大,但字母表只有 26 个字母,因此可以先将 k 对 26 取模。

只有英文字母需要移动,其他字符原样输出。

大写字母加密后仍然是大写字母,小写字母加密后仍然是小写字母。

注意字符串中可能包含空格,不能只读取一个单词。