2301_79832906 2023-11-13 19:58 采纳率: 100%
浏览 18
已结题

请编写一个程序,依次记录字符串中每个字符及其重复的次数,然后输出压缩后的结果。

测试样例:
Input a string:aaBbCcdD
AABBCCDD
output:=2A2B2C2D
这组样例至少给我们一个思路,即将大小写字母统一为大写字母,然后进行处理。只要出现重复就进行压缩,而不是3个以上重复再压缩。

  • 写回答

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)
    

    如果以上回答对您有所帮助,点击一下采纳该答案~谢谢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月16日
  • 已采纳回答 11月13日
  • 创建了问题 11月13日