学术版

ljx201105 @ 2024-10-02 18:27:15

帮写一下代码\ 题目如下:

小猴和小美是同学。小猴希望能够在
课堂上向小美传递纸条,而纸条的内
容只能让小美看懂。小猴为此特别设
计了一个加密规则和解密规则,而对
于小猴和小美双方最重要的是如何解
密得到真正的内容,这里称为原文。

小猴和小美之间想要传递的原文内容
是由大写字母构成的字符串 s,但是
经过加密之后,字符串 s 中会有若
干个(也可能没有)字符缺失了,缺
失的字符用 ? 表示。

现在小猴告诉你解密规则:需要把字
符串 s 中的每个 ? 字符都替换为一
个任意大写字母(A∼Z)。要求补全
后的字符串至少有一个长度为 26 的
子串,在该子串中,每个大写字母都
恰好出现一次,否则就是解密失败。

由于小猴很懒,所以他让你帮助他把
小美的传递给他的纸条上的内容进行解密。

【输入格式】
一行,一个字符串 s,字符串 s 中
只包含大写字母(A∼Z)和问号(?)。

【输出格式】
一行,一个字符串,表示解密之后的
原文。如果由多种结果则输出字典序
最小的结果,如果无法解密失败输出 −1。

【输入输出样例#1】
输入#1
A?CDE??HIJK??N?PQR?TUVW???
输出#1
ABCDEFGHIJKLMNOPQRSTUVWXYZ

【输入输出样例#2】
输入#2
TABCDEFGHIJKLMNOPQ?TUVWXY?
输出#2
-1
【输入输出样例#3】
输入#3
?A?CDE??HIJK??N?PQR?TUVW???
输出#3
AABCDEFGHIJKLMNOPQRSTUVWXYZ
【数据范围】
对于 10% 的数据:n=26,保证字符串 s 
中没有字符 ?;

另外 20% 的数据:n=26,保证字符串 s 
中只有一个字符 ?;

对于 60% 的数据:26≤n≤1000,保证字
符串 s 中最多只有三个字符 ?;

对于 100% 的数据:26≤n≤10^6,保证字符串 
s 只包含大写字母和字符 ?。

by KeQingDog @ 2024-10-02 18:30:10

小猴编程 /qd


|