Longest Repeating Character Replacement LeetCode solution in C++
1class Solution {2public:3int characterReplacement(string s, int k) {4int n = s.length();5if (n == k) return n;6if (n == 1) return 1;78int res = 0;9int maxCnt = 0;1011unordered_map<char, int> mp;1213for (int l = 0, r = 0; r < n; r++) {14mp[s[r]]++;15maxCnt = max(maxCnt, mp[s[r]]);16while (r - l + 1 - maxCnt > k) {17mp[s[l]]--;18l++;19}20res = max(r - l + 1, res);21}22return res;23}24};