网站首页 > 技术文章 正文
def decompress_q(s):
i = 0
n = len(s)
decompressed = []
while i < n:
if s[i].isdigit():
# 检查数字是否合法(至少2,且后面必须跟字母)
if i + 1 >= n or not s[i+1].islower():
return "Q | error"
num = int(s[i])
if num < 2:
return "Q | error"
char = s[i+1]
decompressed.append(char * num)
i += 2
elif s[i].islower():
# 直接添加字母
decompressed.append(s[i])
i += 1
else:
# 非法字符(如大写字母、符号等)
return "Q | error"
return ''.join(decompressed)
# 测试用例
input_str = input().strip()
result = decompress_q(input_str)
print(result)
解决思路
- 合法性检查:
遍历字符串,检查是否有非法字符(如非小写字母和非数字)。
数字必须大于等于2,且后面必须紧跟一个小写字母。
不能有连续的数字(如12a是非法的,因为12会被视为一个数字12,但题目可能隐含数字为1位数)。
- 解压操作:
逐个字符处理,遇到数字时,读取数字和紧随的字母,扩展为连续字母。
其他字符直接保留。
- 上一篇: Python 视频处理与特效:高效实现编辑与压缩
- 下一篇: 常见的序列化框架及Protobuf原理
猜你喜欢
- 2025-04-24 Python黑客实战编程---3分钟教你如何暴力破解FTP服务器口令
- 2025-04-24 Python黑客入门:暴力破解zip,零基础也可以学会
- 2025-04-24 10行Python代码实现智能文件整理
- 2025-04-24 Python 神器 zipfile 模块:一键解锁解压、备份数据超能力
- 2025-04-24 常见的序列化框架及Protobuf原理
- 2025-04-24 Python 视频处理与特效:高效实现编辑与压缩
- 263℃Python短文,Python中的嵌套条件语句(六)
- 263℃python笔记:for循环嵌套。end=""的作用,图形打印
- 261℃PythonNet:实现Python与.Net代码相互调用!
- 256℃Python实现字符串小写转大写并写入文件
- 255℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 116℃原来2025是完美的平方年,一起探索六种平方的算吧
- 96℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 89℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)