func_code_string: #include <bits/stdc++.h>   using namespace std;   int main() {     int shr[10], mor[10], shrc[10], morc[10], n, i;     cin >> n;     for (i = 0; i < 10; i++) {       shr[i] = 0;       mor[i] = 0;       shrc[i] = 0;       morc[i] = 0;     }     char sher[n + 1], mr[n + 1];     cin >> sher >> mr;     for (i = 0; i < n; i++) {       shr[sher[i] -  0 ]++;       mor[mr[i] -  0 ]++;       shrc[sher[i] -  0 ]++;       morc[mr[i] -  0 ]++;     }     long sherlockmax = 0, sheri = 0, mori = 0, minmori = 0;     while (sheri < 10 && mori < 10) {       while (shr[sheri] == 0 && sheri < 10) sheri++;       while (mor[mori] == 0 && mori < 10) mori++;       while (sheri >= mori && mori < 10) {         mori++;       }       if (mori < 10 && sheri < 10 && mori > sheri) {         sherlockmax += min(shr[sheri], mor[mori]);         long k = min(shr[sheri], mor[mori]);         shr[sheri] -= k;         mor[mori] -= k;       }     }     sheri = 0;     mori = 0;     while (sheri < 10 && mori < 10) {       while (shrc[sheri] == 0 && sheri < 10) sheri++;       while (morc[mori] == 0 && mori < 10) mori++;       while (sheri > mori && mori < 10) {         minmori += morc[mori];         mori++;       }       if (mori < 10 && sheri < 10 && mori >= sheri) {         long k = min(shrc[sheri], morc[mori]);         shrc[sheri] -= k;         morc[mori] -= k;       }     }     cout << minmori << endl;     cout << sherlockmax << endl;     return 0;   }   