当前位置: 首页> 财经> 股票 > C++ | Leetcode C++题解之第395题至少有K个重复字符的最长子串

C++ | Leetcode C++题解之第395题至少有K个重复字符的最长子串

时间:2025/7/9 1:02:46来源:https://blog.csdn.net/Ddddddd_158/article/details/142073719 浏览次数:0次

题目:

题解:

class Solution {
public:int longestSubstring(string s, int k) {int ret = 0;int n = s.length();for (int t = 1; t <= 26; t++) {int l = 0, r = 0;vector<int> cnt(26, 0);int tot = 0;int less = 0;while (r < n) {cnt[s[r] - 'a']++;if (cnt[s[r] - 'a'] == 1) {tot++;less++;}if (cnt[s[r] - 'a'] == k) {less--;}while (tot > t) {cnt[s[l] - 'a']--;if (cnt[s[l] - 'a'] == k - 1) {less++;}if (cnt[s[l] - 'a'] == 0) {tot--;less--;}l++;}if (less == 0) {ret = max(ret, r - l + 1);}r++;}}return ret;}
};
关键字:C++ | Leetcode C++题解之第395题至少有K个重复字符的最长子串

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: