华为OD试题之第k长子串

第k长子串

题目描述

给定一个字符串

只包含大写字母

求在包含同一字母的子串中

长度第K长的子串

相同字母只取最长的子串

输入描述

第一行 一个子串 1 < len <= 100

只包含大写字母

第二行为k的值

输出描述

输出连续出现次数第k多的字母的次数

如果子串中只包含同一字母的子串数小于k

则输出-1

复制代码
def count_str(str,k):
    dict1={}
    valuesort=[]
    for i in str:
        if i in dict1:
            dict1[i]+=1
        else:
            dict1[i]=1
    print(dict1)
    for key,value in dict1.items():
        valuesort.append(value)
        valuesort=sorted(valuesort,reverse=True)
    print(valuesort)
    value2=valuesort[k-1]
    print(value2)

if __name__ == '__main__':
    k=int(input())
    str="AAAAHHHBBCDHHHH"
    count_str(str,k)
相关推荐
hakesashou2 分钟前
python变量如何加入到文件路径
python
虾..25 分钟前
Linux 简单日志程序
linux·运维·算法
梦弦1827 分钟前
Django:Python高效Web开发利器
python·django
Trent198532 分钟前
影楼精修-眼镜祛反光算法详解
图像处理·人工智能·算法·计算机视觉·aigc
蓝色汪洋34 分钟前
经典修路问题
开发语言·c++·算法
Knight_AL37 分钟前
Spring AOP 中 JoinPoint 使用指南
java·python·spring
知远同学42 分钟前
Pycharm顶部菜单栏固定显示
ide·python·pycharm
默默前行的虫虫43 分钟前
nicegui中多次调用数据库操作总结
数据库·python
csuzhucong44 分钟前
122魔方、123魔方
算法
Salt_07281 小时前
DAY 47 Tensorboard的使用介绍
人工智能·python·深度学习·机器学习