Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <string>#include <vector>using namespace std;bool can(string& s, int begin, int end, int letter, int k) {int num = 0;for (int i = begin; i <= end; ++i)if (s[i] - 'a' == letter)++num;return num + k >= end - begin + 1;}int main(){string s;int k;cin >> k >> s;vector<int> num(26);int ans = 1;int i, j, h;bool change;for (i = 0; i < s.size(); ++i)++num[s[i] - 'a'];for (i = 0; i < s.size(); ++i) {h = 0;for (j = i + ans; j < s.size(); ++j) {change = false;for ( ; h < 26; ++h) {if (num[h] > ans)if (can(s, i, j, h, k)) {ans = j - i + 1;