传统题 1000ms 256MiB

维吉尼亚密表加密(选1_P90)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

Description

在单一的密码表的基础上,维吉尼亚密码引入了一个26×26的英文字母方阵密表,如下图所示:

img

现在请你输入一串明文及密钥。

请你结合密钥,利用维吉尼亚方阵密表对明文进行加密。比如明文为“THEBOOKANDTHEPENCIL”,密钥为“BIG”,加密时,以明文为行,密钥为列,行和列交叉得到密文。

(1)若输入的明文中存在非字母字符,则不用进行加密。

(2)密钥均为英文字母字符,当密钥长度小于明文长度时,密钥可以循环使用。

请编写一个程序,输入明文和密钥,输出“维吉尼亚”密文。

Format

Input

第1行输入明文

第2行输入密钥

Output

借助维吉尼亚密码26×26的英文字母方阵密表,和题中提供的密钥,对该明文进行加密,输入加密后所得到的密文

Samples

HELLO
KEY
RIJVS
HEd&QQ@LLoBF
KEY
RIb&UO@PJyFD

Limitation

1s, 1024KiB for each test case.

说明:本题中处理的字母字符,若存在小写字母字符,加密方式与大写字母字符类似。

【2025选修1:栈基础】

未认领
状态
已结束
题目
20
开始时间
2025-10-14 0:00
截止时间
2025-12-31 23:59
可延期
24 小时