func_code_string: #include <bits/stdc++.h>   #ifndef ONLINE_JUDGE   #define debug(x) cout << #x <<  :   << (x) << endl   #else   #define debug(x)   #endif   using namespace std;   typedef long long ll;   typedef vector<int> vi;   const int maxn=1e6+7,inf=0x3f3f3f3f,mod=1e9+7;      string s[4];   int n;   int cnt1[4],cnt0[4];      int match(int i,int j)   {       if(cnt0[i]>=n && cnt0[j]>=n && cnt0[i]>=cnt0[j])       {           vi b;           b.push_back(-1);           int cc=0;           for(int k=0;k<2*n;++k) if(s[j][k]== 0  && cc<n) b.push_back(k),cc++;           b.push_back(2*n);           cc=0;           for(int k=0;k<2*n;++k)           {               if(s[i][k]== 0  && cc<n)               {                   for(int x=b[cc]+1;x<b[cc+1];++x) cout<<s[j][x];                   cc++;               }               cout<<s[i][k];           }           for(int x=b[cc]+1;x<b[cc+1];++x) cout<<s[j][x];           cout<<  n ;           return true;       }       else if(cnt1[i]>=n && cnt1[j]>=n && cnt1[i]>=cnt1[j])       {           vi b;           b.push_back(-1);           int cc=0;           for(int k=0;k<2*n;++k) if(s[j][k]== 1  && cc<n) b.push_back(k),cc++;           b.push_back(2*n);           cc=0;           for(int k=0;k<2*n;++k)           {               if(s[i][k]== 1  && cc<n)               {                   for(int x=b[cc]+1;x<b[cc+1];++x) cout<<s[j][x];                   cc++;               }               cout<<s[i][k];           }           for(int x=b[cc]+1;x<b[cc+1];++x) cout<<s[j][x];           cout<<  n ;           return true;       }       return false;   }      int main()   {       ios::sync_with_stdio(false);       cin.tie(0);       int kase;       cin>>kase;       while(kase--)       {           cin>>n;           s[0].clear(),s[1].clear(),s[2].clear();           cin>>s[0]>>s[1]>>s[2];           for(int j=0;j<3;++j) cnt1[j]=0,cnt0[j]=0;           for(int j=0;j<3;++j) for(int i=0;i<2*n;++i) cnt1[j]+=(s[j][i]== 1 ),cnt0[j]+=(s[j][i]== 0 );           bool ok=0;           for(int i=0;i<3;++i)           {               for(int j=0;j<3;++j)               {                   if(i==j) continue;                   if(match(i,j))                   {                       ok=1;                       break;                   }               }               if(ok) break;           }           assert(ok);       }       return 0;   }   