题目描述 小军得到一串数字和一个加密表。 数字 源码 0 a 1 b 2 c 3 d 4 e 5 A 6 B 7 C 8 D 9 E 输入 输入一行,为一个数字 输出 输出解密后的原文。 样例输入 复制 1 样例输出 复制 b
以下是使用不同编程语言实现该解密功能的代码: Python 实现 ```python # 定义加密表 decryption_table = { '0': 'a', '1': 'b', '2': 'c', '3': 'd', '4': 'e', '5': 'A', '6': 'B', '7': 'C', '8': 'D', '9': 'E' } # 获取输入的数字 input_num = input() # 初始化解密后的原文为空字符串 decrypted_text = "" # 遍历输入的每个数字字符 for num in input_num: # 根据加密表进行解密 decrypted_text += decryption_table[num] # 输出解密后的原文 print(decrypted_text) ``` 代码解释: - 首先定义了一个字典 `decryption_table` 作为加密表,键为数字字符,值为对应的解密字符。 - 使用 `input()` 函数获取用户输入的数字字符串。 - 遍历输入字符串中的每个数字字符,根据加密表查找对应的解密字符,并添加到 `decrypted_text` 中。 - 最后输出解密后的原文。 Java 实现 ```java import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class Decryption { public static void main(String[] args) { // 定义加密表 Map<Character, Character> decryptionTable = new HashMap<>(); decryptionTable.put('0', 'a'); decryptionTable.put('1', 'b'); decryptionTable.put('2', 'c'); decryptionTable.put('3', 'd'); decryptionTable.put('4', 'e'); decryptionTable.put('5', 'A'); decryptionTable.put('6', 'B'); decryptionTable.put('7', 'C'); decryptionTable.put('8', 'D'); decryptionTable.put('9', 'E'); // 获取输入的数字 Scanner scanner = new Scanner(System.in); String inputNum = scanner.nextLine(); scanner.close(); // 初始化解密后的原文为空字符串 StringBuilder decryptedText = new StringBuilder(); // 遍历输入的每个数字字符 for (char num : inputNum.toCharArray()) { // 根据加密表进行解密 decryptedText.append(decryptionTable.get(num)); } // 输出解密后的原文 System.out.println(decryptedText.toString()); } } ``` 代码解释: - 定义一个 `HashMap` 类型的 `decryptionTable` 作为加密表,存储数字字符和对应的解密字符。 - 使用 `Scanner` 类获取用户输入的数字字符串。 - 创建一个 `StringBuilder` 对象 `decryptedText` 用于存储解密后的原文。 - 遍历输入字符串的每个字符,根据加密表查找对应的解密字符并添加到 `decryptedText` 中。 - 最后将 `StringBuilder` 转换为字符串并输出。 C++ 实现 ```cpp #include <iostream> #include <string> #include <unordered_map> int main() { // 定义加密表 std::unordered_map<char, char> decryptionTable = { {'0', 'a'}, {'1', 'b'}, {'2', 'c'}, {'3', 'd'}, {'4', 'e'}, {'5', 'A'}, {'6', 'B'}, {'7', 'C'}, {'8', 'D'}, {'9', 'E'} }; // 获取输入的数字 std::string inputNum; std::cin >> inputNum; // 初始化解密后的原文为空字符串 std::string decryptedText = ""; // 遍历输入的每个数字字符 for (char num : inputNum) { // 根据加密表进行解密 decryptedText += decryptionTable[num]; } // 输出解密后的原文 std::cout << decryptedText << std::endl; return 0; } ``` 代码解释: - 定义一个 `unordered_map` 类型的 `decryptionTable` 作为加密表,存储数字字符和对应的解密字符。 - 使用 `std::cin` 获取用户输入的数字字符串。 - 初始化一个空字符串 `decryptedText` 用于存储解密后的原文。 - 遍历输入字符串的每个字符,根据加密表查找对应的解密字符并添加到 `decryptedText` 中。 - 最后输出解密后的原文。 [2025-12-07 17:33:53 | AI问答 | 1067点数解答]
- [字节豆包] 加密 输入:明文,密钥; 输出:16轮子密钥,密文; 解密 输入:密文,密钥; 输出:16轮子密钥,明文; (836点数解答 | 2025-10-14 16:35:32)51
- [字节豆包] 题目描述 小军得到一串数字和一个加密表。 数字 源码 0 a 1 b 2 c 3 d 4 e 5 A 6 B 7 C 8 D 9 E 输入 输入一行,为一个数字 输出 输出解密后的原文。 样例输入 复制 1 样例输出 复制 b(1067点数解答 | 2025-12-07 17:33:53)39
- [DeepSeek] 小军得到一串数字和一个加密表。 数字 源码 0 a 1 b 2 c 3 d 4 e 5 A 6 B 7 C 8 D 9 E 输入 输入一行,为一个数字 输出 输出解密后的原文。 样例输入 复制 1 样例输出 复制 b(21点数解答 | 2025-12-14 20:07:15)21
- [DeepSeek] 小军得到一串数字和一个加密表。 数字 源码 0 a 1 b 2 c 3 d 4 e 5 A 6 B 7 C 8 D 9 E 输入 输入一行,为一个数字 输出 输出解密后的原文。 样例输入 复制 1 样例输出 复制 b(20点数解答 | 2025-12-14 20:07:27)35
- [DeepSeek] 小军得到一串数字和一个加密表。 数字 源码 0 a 1 b 2 c 3 d 4 e 5 A 6 B 7 C 8 D 9 E 输入 输入一行,为一个数字 输出 输出解密后的原文。 样例输入 复制 1 样例输出 复制 b(20点数解答 | 2025-12-14 20:07:37)19
- [DeepSeek] 试小军得到一串数字和一个加密表。 编一程序, 数字 源码 0 a 1 b 2 c 3 d 4 e 5 A 6 B 7 C 8 D 9 E 输入 输入一行,为一个数字 输出 输出解密后的原文。 样例输入 复制 1 样例输出 复制 b(125点数解答 | 2025-12-14 20:08:43)28
- [字节豆包] 描述 恺撒密码是古罗**撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下: 原文:abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz(62点数解答 | 2024-10-22 23:11:57)134
- [字节豆包] 请计算在区间 n 到 m 的所有整数中,数字 x(0<=x<=9)共出现了多少次? 例如,数字 2,在 12 到 23 中 12、13、14、15、16、17、18、19、20、21、22、23,共出现了 6 次。 输入 输入一行,3 个整数 n、m 和 x,之间用一个空格分开,n<m 输出 输出一行,包含一个整数,表示 x 出现的次数 样例输入 复制 8 15 2 样例输出 复制 1 提示 n<=m<=1000000,0<=x<=9 来源/分类(322点数解答 | 2025-12-13 21:37:08)49
- [字节豆包] 题目描述 给定一个长度为 n n 且仅由字符 a、b、c 构成的字符串 s s ,请问其中包含多少个形如 abc 的子串?又包含多少个形如 abc 的子序列? 子串:如果从字符串 s s 头部和尾部各自删除若干(可以为 0 0)个字符可以得到字符串 t t,那么称 t t 为 s s 的子串。 子序列:如果从字符串 s s 中任意删除若干(可以为 0 0)个字符可以得到字符串 t t,那么称 t t 为 s s 的子序列。 以字符串 abc 为例,ac 是它的子序列(可以通过直接删除 b 得到),但并不是它的子串(无法从头部或尾部开始,在不删除 a 或 c 的前提下删除 b)。 输入 第一行输入一个正整数 n n. 第二行输入一个字符串 s s. 输出 输出一行两个整数,分别表示形如 abc 的子串与子序列的个数。 样例输入 复制 5 aabcc 样例输出 复制 1 4(574点数解答 | 2025-12-10 17:52:12)47
- [阿里通义] 一个 5×6 的迷宫样例如下: 要求给出从起点(1,1)到终点(3,4)的路径。 为了处理方便,保证最外圈全都为障碍物。 扩展到一般情况,一个 m×n 的迷宫,要求输出从起点(1,1)到终点(m-2,n-2)的路径。 测试实例保证路径是唯一的。 该题要求自行设计一个栈来做。如果设计的是顺序栈,则保证栈的大小不超过 200 个元素。 输入 第一行为两个整数 m 和 n,表示 m×n 的迷宫。 接下来有 m 行,每行有 n 个数(n 个数之间用空格间隔,值 = 0 表示可以通行,值 = 1 表示为障碍物) 输出 输出从起点到终点的路径,每个坐标占一行,坐标间的行号和列号用一个空格间隔。具体格式可参考样例。c++ 源代码(732点数解答 | 2024-11-03 02:34:53)498
- [DeepSeek] 题目描述 现有三条边长 a , b , c a,b,c,编写程序判断三条边能否构成三角形,若能构成三角形,则继续判断能否构成等腰三角形,等边三角形。 任意两边之和大于第三边才能构成三角形, 等腰三角形:至少有两条边相等的三角形 等边三角形:三条边都相等的三角形 输入格式 一行,三个正整数 a , b , c a,b,c 依次表示三条边的长度。 输出格式 输出对应的判断结果: 若能构成三角形,单独使用一行输出“三角形” 若能构成等腰三角形,单独使用一行输出“等腰三角形” 若能构成等边三角形,单独使用一行输出“等边三角形” 若无法构成三角形,输出 “No” input1 复制 3 3 3 output1 复制 三角形 等腰三角形 等边三角形 input2 复制 3 3 5 output2 复制 三角形 等腰三角形 input3 复制 1 2 3 output3 复制 No 语言方向:C++ 系统环境:Windows(214点数解答 | 2025-08-24 17:31:55)184
- [字节豆包] c++题目描述 现有三条边长 a , b , c a,b,c,编写程序判断三条边能否构成三角形,若能构成三角形,则继续判断能否构成等腰三角形,等边三角形。 任意两边之和大于第三边才能构成三角形, 等腰三角形:至少有两条边相等的三角形 等边三角形:三条边都相等的三角形 输入格式 一行,三个正整数 a , b , c a,b,c 依次表示三条边的长度。 输出格式 输出对应的判断结果: 若能构成三角形,单独使用一行输出“三角形” 若能构成等腰三角形,单独使用一行输出“等腰三角形” 若能构成等边三角形,单独使用一行输出“等边三角形” 若无法构成三角形,输出 “No” input1 复制 3 3 3 output1 复制 三角形 等腰三角形 等边三角形 input2 复制 3 3 5 output2 复制 三角形 等腰三角形 input3 复制 1 2 3 output3 复制 No 数据规模与约定 对于 100 % 100% 的数据, 1 ≤ a , b , c ≤ 100 1≤a,b,c≤100。(437点数解答 | 2026-01-24 20:19:56)27