func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long inf = (long long)(1e9 + 17);   const long long mod = (long long)(1e9 + 7);   int n, k;   string s, t;   int dp[201][201][201];   int recurse(int idx, int tot, int ct) {     if (tot > k) {       return -inf;     }     if (idx == n) {       if (tot > k) return -inf;       return 0;     }     int &ans = dp[idx][tot][ct];     if (ans != -1) {       return ans;     }     ans = -inf;     if (s[idx] != t[1] or s[idx] != t[0])       ans = max(ans, recurse(idx + 1, tot, ct));     ans = max(ans, recurse(idx + 1, tot + (s[idx] != t[0]), ct + 1));     ans = max(ans,               ct + recurse(idx + 1, tot + (s[idx] != t[1]), ct + (t[0] == t[1])));     return ans;   }   int main() {     ios::sync_with_stdio(false);     cin.tie(NULL);     cout.tie(NULL);     cin >> n >> k;     cin >> s >> t;     memset(dp, -1, sizeof dp);     int ans = recurse(0, 0, 0);     cout << ans <<   n ;     return 0;   }   