测试样例:
Input a string:aaBbCcdD
AABBCCDD
output:=2A2B2C2D
这组样例至少给我们一个思路,即将大小写字母统一为大写字母,然后进行处理。只要出现重复就进行压缩,而不是3个以上重复再压缩。
请编写一个程序,依次记录字符串中每个字符及其重复的次数,然后输出压缩后的结果。
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
Leodong. 2023-11-13 20:02关注该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
解析:首先将输入的字符串转换为大写字母,然后遍历字符串,统计每个字符出现的次数。当遇到重复的字符时,将其次数添加到结果字符串中,并将计数器重置为1。最后输出压缩后的结果。代码如下:
def compress_string(s): s = s.upper() result = "" count = 1 for i in range(1, len(s)): if s[i] == s[i - 1]: count += 1 else: result += str(count) + s[i - 1] count = 1 result += str(count) + s[-1] return result input_str = input("Input a string:") output_str = compress_string(input_str) print("Output:", output_str)
如果以上回答对您有所帮助,点击一下采纳该答案~谢谢
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用