华为OD-第K长的连续字母字符串长度

题目描述

给定一个字符串,只包含大写字母,求在包含同一字母的子串中,长度第 k 长的子串的长度,相同字母只取最长的那个子串。

代码实现

python 复制代码
# coding:utf-8
# 第K长的连续字母字符串长度
# https://www.nowcoder.com/discuss/353150502185672704?sourceSSR=search

class Solution:
    def maxContinuousStr(self, s):
        res = dict()
        count = 1
        for i in range(len(s) - 1):
            if s[i] == s[i + 1]:
                count += 1
            else:
                if s[i] in res:
                    res[s[i]] = max(res[s[i]], count)
                else:
                    res[s[i]] = count
                count = 1
        ret = sorted(res.items(), key=(lambda x: x[1]), reverse=True)
        return ret[k-1][1]


if __name__ == '__main__':
    s = input("input S:").split(' ')[0]
    k = int(input('input K :').split(' ')[0])
    solution = Solution()
    print(solution.maxContinuousStr(s))
相关推荐
aqi003 小时前
15天学会AI应用开发(九)利用Chroma持久化向量数据
人工智能·python·大模型·ai编程·ai应用
金銀銅鐵3 小时前
借助 Pygame 探索最大公约数的规律
python·数学·游戏
To_OC15 小时前
LC 128 最长连续序列:别上来就排序,O (n) 解法才是这题的灵魂
javascript·算法·leetcode
ServBay20 小时前
9 个 Python 第三方库推荐,不用 AI 都好像多出一个团队
后端·python
用户83562907805120 小时前
如何使用 Python 添加和管理 Excel 批注(完整示例)
后端·python
用户83562907805121 小时前
使用 Python 管理 Excel 工作表:创建、复制、删除与重命名
后端·python
05Kevin1 天前
lk每日冒险题--数据结构6.27
算法
荣码1 天前
LangGraph多Agent协作:3个Agent干活比1个强,但我踩了4个坑
java·python