fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int res = 0 ;
  4. void check(string per[4],int tmp[3][2]){
  5. int cnt[3][2] ;
  6. for(int i=0;i<3;i++){
  7. for(int j=0;j<2;j++){
  8. cnt[i][j] = tmp[i][j] ;
  9. }
  10. }
  11. int ans = 0 ;
  12. for(int i=0;i<4;i++){
  13. int nax = min(cnt[0][per[i][0]-'0'],cnt[1][per[i][1]-'0']);
  14. nax = min(nax,cnt[2][per[i][2]-'0']);
  15. cnt[0][per[i][0]-'0']-=nax;
  16. cnt[1][per[i][1]-'0']-=nax;
  17. cnt[2][per[i][2]-'0']-=nax;
  18. ans+=nax;
  19. }
  20. res = max(res,ans);
  21. }
  22. int main(){
  23. int t ;
  24. cin >> t ;
  25. while(t--){
  26. res = 0 ;
  27. string per[] = {"111","100","010","001"} ;
  28. sort(per,per+4);
  29. int cnt[3][2] ;
  30. for(int i=0;i<3;i++){
  31. for(int j=0;j<2;j++){
  32. cnt[i][j] = 0 ;
  33. }
  34. }
  35. for(int i=0;i<3;i++){
  36. string s ;
  37. cin >> s ;
  38. for(int j=0;j<s.size();j++){
  39. cnt[i][s[j]-'0']++;
  40. }
  41. }
  42. do{
  43. check(per,cnt);
  44. }while(next_permutation(per,per+4));
  45. string ones(res,'1');
  46. string zeros(10-res,'0');
  47. cout << ones + zeros << endl;
  48. }
  49. return 0 ;
  50. }
  51.  
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
Standard output is empty