OD统一机试:敏感字段加密
题目
给定一个由多个命令字组成的命令字符串;
- 字符串长度小于等于
127
字节,只包含大小写字母,数字,下划线和偶数个双引号 - 命令字之间以一个或多个下划线_进行分割
- 可以通过两个双引号
""
来标识包含下划线_的命令字或空命令字(仅包含两个双引号的命令字),双引号不会在命令字内部出现
请对指定索引的敏感字段进行加密,替换为******
(6 个*
),
并删除命令字前后多余的下划线_。
如果无法找到指定索引的命令字,输出字符串ERROR
输入
输入为两行
第一行为命令字索引K
(从0
开始)
第二行为命令字符串S
输出
输出处理后的命令字符串
如果无法找到指定索引的命令字,输出字符串ERROR
示例一
输入
1
password__a12345678_timeout_100
输出
password_******_timeout_100
示例二
输入
2
aaa_password_"a12_45678"_timeout__100_""_
输出
aaa_password_"******"_timeout_100_""
解题思路
- 将输入的字符串 s 按照双引号或下划线作为分隔符分割为多个字符串,存入列表 commands 中。
- 如果输入的整数 k 小于列表的长度,则将第 k 个元素替换为"**",并用下划线将所有元素拼接起来,返回结果。
- 如果 k 不小于列表的长度,则返回"ERROR"。
核心知识点
字符串处理相关逻辑,重点是阅读代码。