#include #define endl '\n' #define ll long long using namespace std; string s1,s2,t1,t2; int n,ans; void so(){ int cnt1[2]={0,0},cnt2[2]={0,0}; cin>>n;ans=0; cin>>s1>>s2>>t1>>t2; s1=' '+s1+'?',s2=' '+s2+'#',t1=' '+t1+'0',t2=' '+t2+'0'; ++n; for(int i=1,j=1;i<=n&&j<=n;){ while(i<=n&&t1[i]!='0'){ cnt1[s1[i]-'0']++; i++; } while(j<=n&&t2[j]!='0'){ cnt2[s2[j]-'0']++; j++; } if(ij){ bool o=s2[j]-'0'; if(cnt1[o]) ans++,cnt1[o]--; else cnt1[!o]--; ans+=min(cnt1[0],cnt2[0])+min(cnt1[1],cnt2[1]); cnt1[0]-=cnt2[0],cnt1[1]-=cnt2[1]; if(cnt1[0]<0) cnt1[1]+=cnt1[0],cnt1[0]=0; if(cnt1[1]<0) cnt1[0]+=cnt1[1],cnt1[1]=0; cnt2[0]=cnt2[1]=0; j++; } } cout<>t; while(t--) so(); return 0; }