fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5. int t,n,ca,cb,cc,ccb,la,lb,lc,flag;
  6. string a,b,c;
  7. cin>>t;
  8. while(t--)
  9. {
  10. cin>>a>>b>>c>>n;
  11. la=a.length();lb=b.length();lc=c.length();
  12. cb=0;
  13. for(int i=lb-1;i>=0;i--)
  14. {
  15. if(b[i]=='1')
  16. cb++;
  17. }
  18. ca=0;
  19. for(int i=la-1;i>=0;i--)
  20. {
  21. if(a[i]=='1')
  22. ca++;
  23. }
  24. cc=0;flag=0;
  25. for(int i=lc-1;i>=0;i--)
  26. {
  27. if(c[i]=='1')
  28. cc++;
  29. if(c[i]=='0')
  30. {
  31. if(flag==0)
  32. cc=1;flag=1;
  33. }
  34. }
  35. if(flag==1)
  36. {
  37. cout<<cc+n*cb+ca<<endl;
  38. }
  39. else if(flag==0)
  40. {
  41. flag=0;ccb=0;
  42. for(int i=lb-1;i>=0;i--)
  43. {
  44. if(b[i]=='1')
  45. ccb++;
  46. else if(b[i]=='0')
  47. {if(flag==0)ccb=1;flag=1;}
  48. }
  49. if(flag==1)
  50. {cout<<ccb+(n-1)*cb+ca<<endl;}
  51. else if(flag==0)
  52. {
  53. flag=0;ca=0;
  54. for(int i=la-1;i>=0;i--)
  55. {
  56. if(a[i]=='1')
  57. ca++;
  58. else if(a[i]=='0')
  59. {if(flag==0)ca=1;flag=1;}
  60. }
  61. if(flag==1)
  62. {cout<<ca<<endl;}
  63. else if(flag==0)
  64. {cout<<1<<endl;}
  65. }
  66. }
  67. }
  68.  
  69. return 0;
  70. }
  71.  
Success #stdin #stdout 0s 15240KB
stdin
1
111 111 111 4
stdout
1