(C++)华为OD机考:统一考试 C卷 + D卷 + B卷 +A卷
C卷真题目录:【C++题解版】华为 OD 机试 C卷抽中题库清单(全真题库)含考点说明
题目描述
给定一段“密文”字符串 s,其中字符都是经过“密码本”映射的,现需要将“密文”解密并输出。
映射的规则(‘a’ ~ ‘i’)分别用(‘1’ ~ ‘9’)表示;(‘j’ ~ ‘z’)分别用(“10*” ~ “26*”)表示。
约束:映射始终唯一。
输入描述
“密文”字符串
输出描述
明文字符串
备注:翻译后的文本长度在100以内
用例
输入 | 201920* |
---|---|
输出 | tst |
说明 | 无 |
解题思路
- 遍历并检查当前位置后面是否有至少两个字符,并且第三个字符是否为’*',以此判断是否是10到26之间的映射。
- 如果是10到26之间的映射:
- 解析当前位置开始的两位数字。
- 根据映射规则,将这两位数字转换为对应的字母(‘j’到’z’)。
- 将转换后的字母追加到明文字符串中