func_code_string: #include <bits/stdc++.h>   using namespace std;   const int MAXN = 20;   long long int dp[MAXN][MAXN];   long long int tav[MAXN];   long long int n;   string s;   long long int dtoc(char x) { return x -  0 ; }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     tav[0] = 1;     for (int i = 1; i < MAXN; i++) {       tav[i] = 10 * tav[i - 1];     }     cin >> n;     cin >> s;     for (int i = 0; i <= n; i++) {       for (int j = 0; j <= n; j++) {         if (i) {           dp[i][j] = dp[i - 1][j] + dtoc(s[2 * n - i - j]) * tav[i - 1];         }         if (j) {           dp[i][j] =               max(dp[i][j], dp[i][j - 1] + dtoc(s[2 * n - i - j]) * tav[j - 1]);         }       }     }     int i = n;     int j = n;     while (i > 0 || j > 0) {       if (i && dp[i - 1][j] + dtoc(s[2 * n - i - j]) * tav[i - 1] == dp[i][j]) {         i--;         cout <<  H ;       } else {         j--;         cout <<  M ;       }     }   }   