当前位置: 首页 > news >正文

2024_E_100_连续字母长度

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

输入描述
第一行有一个子串(1<长度<=100),只包含大写字母。

第二行为 k的值

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

用例1
输入
AAAAHHHBBCDHHHH
3
输出
2
说明
同一字母连续出现的最多的是A和H,四次;

第二多的是H,3次,但是H已经存在4个连续的,故不考虑;

下个最长子串是BB,所以最终答案应该输出2。

用例2
输入
AABAAA
2
输出
1
说明
同一字母连续出现的最多的是A,三次;

第二多的还是A,两次,但A已经存在最大连续次数三次,故不考虑;

下个最长子串是B,所以输出1。

用例3
输入
ABC
4
输出
-1

def func():strs = input()k = int(input())cnt = {}#先把第一个加进来cnt[strs[0]] = 1left = 1while left < len(strs):if strs[left] == strs[left-1]:cnt[strs[left]] += + 1else:if strs[left] not in cnt:cnt[strs[left]] = 1else:count = cnt[strs[left]]right = left+1while right < len(strs) and strs[right] == strs[left]:tmp = right - left + 1count = max(count,tmp)right += 1cnt[strs[left]] = countleft = rightcontinueleft += 1#print(cnt)#把cnt按value降序排列newcnt = sorted(cnt.items(), key=lambda x: -x[1])#print(newcnt)maxlength = newcnt[0][1]minlength = newcnt[-1][1]if k < minlength or k > maxlength:return -1for i in range(len(newcnt)):if i != k-1: #k也要从0开始continuereturn(newcnt[i][1])if __name__ == '__main__':print(func())

在这里插入图片描述

用例1
输入
AABBAA
2
输出
2
用例2
输入
BBBAACCCAA
2
输出
3
用例3
输入
BAACCCDDDD
3
输出
2
用例4
输入
BAACCCDDDDBBBAAACDDDDD
2
输出
3
用例5
输入
CCCCCCCCCCCCCCCCCCCC
1
输出
20
用例6
输入
CCCCCCCCCCCCCCCCCCCC
1
输出
20
用例7
输入
FFFFRRRRRO
2
输出
4
用例8
输入
GGGGGZZZZZAZZZZZVAAAADCAAALLL
4
输出
3
用例9
输入
UUUOOOOOMMMUUELLLLLCCCCCCWWWWWOOOOORRRRROODDDDWNNN
20
输出
-1
用例10
输入
UUUOOOOOMMMUUELLLLLCCCCCCWWWWWOOOOORRRRROODDDDWNNN
10
输出
1
用例11
输入
DDDDDNNNNSSSSBOPPPPPXXHHHHHKKRRRRAAAQQQQAUUAAAOOIKKKKKGGGGQQIBYYRRRRRSSSSEEEJJJJYYYYDDBFFDDTTSSSSMNN
2
输出
5
用例12
输入
QQQ
2
输出
-1
用例13
输入
QQQAA
0
输出
-1
用例14
输入
QQQAA
-1
输出
-1
用例15
输入
WWWWHHHHRRRRRWWWWHHHHRRRRRWWWWYYYYBBBBJJJXXFJJSSSSOOOOOAUUUOOEEEEE
2
输出
5
用例16
输入
BCDBSD
2
输出
1
用例17
输入
BBCC
2
输出
2
用例18
输入
BD
4
输出
-1
用例19
输入
BBD
3
输出
-1
用例20
输入
AAAAHHHBBCDHHHH
3
输出
2
用例21
输入
AABAAA
2
输出
1
用例22
输入
ABC
4
输出
-1
用例23
输入
ABC
2
输出
1
用例24
输入
ABC
27
输出
-1
1

相关文章:

2024_E_100_连续字母长度

连续字母长度 题目描述 给定一个字符串&#xff0c;只包含大写字母&#xff0c;求在包含同一字母的子串中&#xff0c;长度第 k 长的子串的长度&#xff0c;相同字母只取最长的那个子串。 输入描述 第一行有一个子串(1<长度<100)&#xff0c;只包含大写字母。 第二行为…...

清空redo导致oracle故障恢复---惜分飞

客户由于空间不足,使用> redo命令清空了oracle的redo文件 数据库挂掉之后,启动报错 Fri Oct 04 10:32:57 2024 alter database open Beginning crash recovery of 1 threads parallel recovery started with 31 processes Started redo scan Errors in file /home/oracle…...

VAE(与GAN)

VAE 1. VAE 模型概述 变分自编码器&#xff08;Variational Autoencoder, VAE&#xff09;是一种生成模型&#xff0c;主要用于学习数据的潜在表示并生成新样本。它由两个主要部分组成&#xff1a;编码器和解码器。 编码器&#xff1a;将输入数据映射到潜在空间&#xff0c;…...

【高等数学】多元微分学(二)

隐函数的偏导数 二元方程的隐函数 F ( x , y ) 0 F(x,y)0 F(x,y)0 推出隐函数形式 y y ( x ) yy(x) yy(x). 欲求 d y d x \frac{d y}{d x} dxdy​ 需要对 F 0 F0 F0 两边同时对 x x x 求全导 0 d d x F ( x , y ( x ) ) ∂ F ∂ x d x d x ∂ F ∂ y d y d x ∂ F…...

.NET 中的 Web服务(Web Services)和WCF(Windows Communication Foundation)

一、引言 在当今数字化时代&#xff0c;不同的软件系统和应用程序之间需要进行高效、可靠的通信与数据交换。.NET 框架中的 Web 服务和 WCF&#xff08;Windows Communication Foundation&#xff09;为此提供了强大的技术支持。它们在构建分布式应用程序、实现跨平台通信以及…...

Linux小知识2 系统的启动

我们在上文中介绍了文件系统&#xff0c;提到了Linux的文件系统存在一个块的概念&#xff0c;其中有一个特殊的块&#xff1a;引导块。这和我们这里要讲的系统启动有关。 BIOS 基本输入输出系统&#xff0c;基本上是一个操作系统最早实现也是最早运行的第一个程序。是一个比较…...

Oracle-19g数据库的安装

简介 Oracle是一家全球领先的数据库和云解决方案提供商。他们提供了一套完整的技术和产品&#xff0c;包括数据库管理系统、企业级应用程序、人工智能和机器学习工具等。Oracle的数据库管理系统是业界最受欢迎和广泛使用的数据库之一&#xff0c;它可以管理和存储大量结构化和…...

Dubbo快速入门(二):第一个Dubbo程序(附源码)

文章目录 一、生产者工程0.目录结构1.依赖2.配置文件3.启动类4.生产者服务 二、消费者工程0.目录结构1.依赖2.配置文件3.启动类4.服务接口5.controller接口 三、测试代码 本博客配套源码&#xff1a;gitlab仓库 首先&#xff0c;在服务器上部署zookeeper并运行&#xff0c;可以…...

不同数据类型转换与转义的对比差异

(Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu) 在C和C语言中&#xff0c;类型转换与转义是有点像的&#xff0c;有时可能被误解&#xff0c;这块需要仔细辨别。 类型转换形如&#xff0c;把不同字节数或相同字节数的类型值进行转换&#xff0c;强调的是数值转换过去&…...

Kylin系统安装VMwareTools工具

如下图所示&#xff0c;安装好Kylin系统之后&#xff0c;还未安装VMwareTools工具&#xff0c;导致系统画面无法填充虚拟机 正常安装了VMwareTools工具后的系统画面 所以&#xff0c;接下来我们介绍一下如何在Kylin系统下安装VMwareTools工具 首先&#xff0c;点击VMware工具栏…...

uni-app 拍照图片添加水印

获取图片信息 uni.chooseImage({count: 6, //默认9sizeType: ["original", "compressed"], //可以指定是原图还是压缩图&#xff0c;默认二者都有sourceType: ["camera"], //从相册选择success: async function (result: any) {if (!props.isMar…...

Docker-registry私有镜像仓库的安装

Docker-registry私有镜像仓库的安装 我在这里的镜像仓库搭建在ip为192.168.3.23的虚机中。 安装docker-registry 1.拉取镜像 # docker pull registry 2.查看镜像 # docker images REPOSITORY TAG IMAGE ID CREATE…...

在vue3中实现祖组件给后代组件传参,可以跨域几层。

使用provide和inject就可以 下面是祖组件代码&#xff1a; //这是祖组件// 引入provide import { provide } from "vue";//定义数据 const projectId ref("");// 给后代组件传参 provide("projectId", projectId); 下面是后代组件代码&#…...

【优选算法】——双指针(上篇)!

&#x1f308;个人主页&#xff1a;秋风起&#xff0c;再归来~&#x1f525;系列专栏&#xff1a;C刷题算法总结&#x1f516;克心守己&#xff0c;律己则安 目录 前言&#xff1a;双指针 1. 移动零&#xff08;easy&#xff09; 2. 复写零&#xff08;easy&#xff09; 3…...

【C语言】数据输出格式控制

数据的输出格式修饰 常用两种&#xff1a; 整型中&#xff0c;输出数据左对齐、右对齐、占m位、不足m位前补0。浮点型中&#xff0c;默认通过四舍五入保留小数点后6位&#xff0c;通过参数设置保留小数点后n位。 #include <stdio.h> #define PI 3.14159 /* 功能&#x…...

Qt-界面优化选择器的用法(70)

目录 描述 使用 类型选择器 ID 选择器 并集选择器 子控件选择器 伪控制器 描述 QSS 的选择器⽀持以下⼏种 选择器⽰例说明全局选择器*选择所有的 widget.类型选择器 (type selector)QPushButton选择所有的 QPushButton 和其⼦类的控件.类选择器 (class selector).QPus…...

全国职业技能大赛——信息安全管理与评估第一阶段BC、FW、WAF题目详细解析过程

💗需要职业技能大赛环境+WP,请联系我!🍬 博主介绍 👨‍🎓 博主介绍:大家好,我是 一个想当文人的黑客 ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【edusrc漏洞挖掘】 【VulnHub靶场复现】【面试分析】 🎉欢迎关注💗一起学习👍一起讨论⭐️一起…...

基于Vite创建项目

vite 是新一代前端构建工具&#xff0c;官网地址&#xff1a;https://vitejs.cn&#xff0c;vite的优势如下&#xff1a; 轻量快速的热重载&#xff08;HMR&#xff09;&#xff0c;能实现极速的服务启动。对 TypeScript、JSX、CSS 等支持开箱即用。真正的按需编译&#xff0c…...

面试题:在 React 中如何绑定事件

在 React 中绑定事件处理器(event handlers)是一个常见的任务,通常涉及以下几个步骤: 定义一个事件处理器函数:在组件的类或者函数组件内部定义一个处理事件的函数。 在 JSX 中绑定事件处理器:在渲染 JSX 时,使用 on 前缀加上事件名称(如 onClick, onChange, onSubmit …...

前端将JSON或者table直接导出为excel

一、引入Sheetjs或者npm直接下载 <script lang"javascript" src"https://cdn.sheetjs.com/xlsx-0.20.3/package/dist/xlsx.full.min.js"></script> 二、页面中使用 //json导出为excel <button onclick"exportExcel()">导出…...

MGeo中文地址结构化教程:从原始文本到标准GeoJSON格式输出的完整转换流程

MGeo中文地址结构化教程&#xff1a;从原始文本到标准GeoJSON格式输出的完整转换流程 1. 引言&#xff1a;为什么我们需要地址结构化&#xff1f; 你有没有遇到过这样的场景&#xff1f;用户填写的收货地址五花八门&#xff1a;“北京市海淀区中关村大街27号”、“北京海淀中…...

南北阁4.1-3B WebUI代码实例:TextIteratorStreamer多线程流式实现解析

南北阁4.1-3B WebUI代码实例&#xff1a;TextIteratorStreamer多线程流式实现解析 今天咱们来聊聊一个特别有意思的项目——一个为南北阁4.1-3B模型量身定做的Web交互界面。如果你用过Streamlit&#xff0c;可能会觉得它的界面有点“官方”&#xff0c;布局也比较固定。但这个…...

不止于复现:用Fluent UDF模拟化学反应放热的3个高级技巧与收敛性优化

不止于复现&#xff1a;用Fluent UDF模拟化学反应放热的3个高级技巧与收敛性优化 在储氢反应器仿真领域&#xff0c;许多工程师能够完成基础的能量源项UDF加载&#xff0c;却常常陷入残差震荡、计算结果失真的困境。本文将从三个实战维度&#xff0c;分享如何让化学反应放热模拟…...

如何在macOS上制作Windows启动盘:WinDiskWriter终极指南

如何在macOS上制作Windows启动盘&#xff1a;WinDiskWriter终极指南 【免费下载链接】windiskwriter &#x1f5a5; A macOS app that creates bootable USB drives for Windows. &#x1f6e0; Patches Windows 11 to bypass TPM and Secure Boot requirements. 项目地址: h…...

MacBook Intel芯片用户看过来:保姆级Anaconda安装与国内镜像源配置全攻略

MacBook Intel芯片用户看过来&#xff1a;保姆级Anaconda安装与国内镜像源配置全攻略 作为一名长期使用MacBook进行Python开发的工程师&#xff0c;我深知环境配置对于初学者来说可能是个不小的挑战。特别是对于使用Intel芯片的MacBook用户&#xff0c;虽然相比M1芯片少了些兼容…...

PdgCntEditor三步搞定PDF书签目录自动生成

1. 为什么你需要PDF书签目录&#xff1f; 每次打开几百页的PDF文档&#xff0c;像无头苍蝇一样滑动滚动条找内容&#xff1f;这种体验我太懂了。上周处理一份300多页的技术手册&#xff0c;光是翻目录就花了半小时&#xff0c;直到我发现PdgCntEditor这个神器。它能把杂乱无章…...

vLLM-v0.17.1参数详解:--disable-log-stats与--log-level日志调优

vLLM-v0.17.1参数详解&#xff1a;--disable-log-stats与--log-level日志调优 1. vLLM框架简介 vLLM是一个专为大型语言模型(LLM)设计的高性能推理和服务库&#xff0c;以其出色的吞吐量和易用性著称。这个项目最初由加州大学伯克利分校的天空计算实验室开发&#xff0c;现在…...

零基础入门:用eNSP搭建USG5500防火墙IPsec虚拟专用网实验环境

从零构建企业级安全隧道&#xff1a;eNSP模拟USG5500防火墙IPsec实战指南 当你第一次听说"IPsec"这个词时&#xff0c;可能会联想到那些科技电影中黑客们建立的加密通道。实际上&#xff0c;IPsec技术离我们并不遥远——它正默默保护着每天数以亿计的企业数据传输。本…...

OpenClaw+Qwen3-32B科研助手:文献综述自动生成与参考文献整理

OpenClawQwen3-32B科研助手&#xff1a;文献综述自动生成与参考文献整理 1. 为什么需要AI科研助手&#xff1f; 作为一名计算机专业的研究生&#xff0c;我每天要处理大量文献。最痛苦的时刻莫过于导师突然说"下周组会做个文献综述"&#xff0c;而我手头只有几十篇…...

Solidity 智能合约入门:从 0 到 1 编写第一个区块链合约

一、什么是 Solidity&#xff1f; Solidity 是一门面向以太坊虚拟机&#xff08;EVM&#xff09;、静态类型的高级编程语言&#xff0c;专门用于编写区块链上的智能合约。 简单来说&#xff1a; 智能合约 运行在区块链上的自动执行代码&#xff08;无需第三方&#xff0c;代…...