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

we建站vvic网站一起做网店

we建站,vvic网站一起做网店,深圳手机网站建设哪家好,开发一款游戏软件需要多少钱给你一个字符串 s 和一个整数 k 。你可以选择字符串中的任一字符,并将其更改为任何其他大写英文字符。该操作最多可执行 k 次。 在执行上述操作后,返回 包含相同字母的最长子字符串的长度。 示例 1: 输入:s “ABAB”, k 2 输出&…

给你一个字符串 s 和一个整数 k 。你可以选择字符串中的任一字符,并将其更改为任何其他大写英文字符。该操作最多可执行 k 次。

在执行上述操作后,返回 包含相同字母的最长子字符串的长度。

示例 1:

输入:s = “ABAB”, k = 2
输出:4
解释:用两个’A’替换为两个’B’,反之亦然。
示例 2:

输入:s = “AABABBA”, k = 1
输出:4
解释:
将中间的一个’A’替换为’B’,字符串变为 “AABBBBA”。
子串 “BBBB” 有最长重复字母, 答案为 4。
可能存在其他的方法来得到同样的结果。

提示:

1 <= s.length <= 105^55
s 仅由大写英文字母组成
0 <= k <= s.length

滑动窗口,窗口内除数量最多的字符外,其他字符加起来不能超过k,找出最长的该窗口即可:

class Solution {
public:int characterReplacement(string s, int k) {int left = 0;map<char, int> cnt;multiset<int> cntNum;int ans = 0;for (int i = 0; i < s.size(); ++i) {auto it = cntNum.find(cnt[s[i]]);if (it != cntNum.end()) {cntNum.erase(it);}++cnt[s[i]];cntNum.insert(cnt[s[i]]);while (i - left + 1 - *cntNum.rbegin() > k) {auto it = cntNum.find(cnt[s[left]]);if (it != cntNum.end()) {cntNum.erase(it);}--cnt[s[left]];cntNum.insert(cnt[s[left]]);++left;}ans = max(ans, i - left + 1);}return ans;}
};

如果字符串s的长度为n,s中的字符种类为m,则此算法时间复杂度为O(n),空间复杂度为O(m),cntNum里最多有cnt.size()个元素。

http://www.dtcms.com/wzjs/824330.html

相关文章:

  • 建湖做网站哪家最好软文广告经典案例
  • 昆山 网站优化大师下载安装
  • 网站iis配置如何搜索关键词热度
  • 做网站是不是很简单网站被入侵
  • 网站门户设计wordpress中文插件下载
  • 天津中冀建设集团有限公司网站石家庄seo培训
  • 滕州 网站 建设小说排行榜
  • 专做企业的p2p网站宁夏省建设厅网站
  • 怎样知道网站有没有做推广学校网站 cms
  • 有什么好用的搜索引擎优化网站方法
  • 临沂市兰山区建设局网站科技设计网站建设
  • 获取网站访客qq代码wordpress手机评论
  • 网站权重问题做网站 怎么赚钱吗
  • 建设网站公司哪家性价比高深圳市住房和建设局官网站首页
  • 酒店的网站建设方案wordpress显示在线人数
  • 视频网站代言人做单页网站要多少钱
  • 苏州营销型网站推广佛山做网站哪家好
  • 湛江专业网站建设网站建设工作室 杭州
  • 无锡网站建设 app 微信做网站哪一家公司好
  • 企业为什么建设网站简单的asp网站源码
  • 泰语网站怎么建设建站官网
  • 网站关键词seo优化公司怎么制作小视频
  • 做网站需要注册公司吗用软件做网站
  • 青海省建设厅网站地址荆门网站建设514885
  • 深圳网站建设小程序成都门户网站建设
  • 想要建设一个网站都需要注意什么如何开发应用
  • 最好的免费的黄页网站竞价单页制作
  • 网站管理助手建站营销活动有哪些
  • 网站建设销售前景网站托管服务 重庆
  • 自己做盗版小说网站吗网站商城注意事项