#include <bits/stdc++.h>
using namespace std;
int t,n,pt,l,r,an,l1,l0,r1,r0,ct,lm,rm;
string a,b,c,d;
int rl(int x){
	l0=0; l1=0; lm=0;
	if(c[x]=='0'){
		lm=1;
		if(a[x]=='0') l0++; else l1++;
		return x;
	}else{
		while(c[x]=='1'){
			lm++;
			if(a[x]=='0') l0++; else l1++;
			x++;
			if(x>=n) return x;
		}
		x--;
		return x;
	}
}
int rr(int x){
	r0=0; r1=0; rm=0;
	if(d[x]=='0'){
		rm=1;
		if(b[x]=='0') r0++; else r1++;
		return x;
	}else{
		while(d[x]=='1'){
			rm++;
			if(b[x]=='0') r0++; else r1++;
			x++;
			if(x>=n) return x-1;
		}
		x--;
		return x;
	}
}
void rp(int x){
	int lt=0,rt=0;
	lt=min(min(l0,r0),min(lm,rm));
	rt=min(min(l1,r1),min(lm,rm));
	l0-=lt; r0-=lt;
	l1-=rt; r1-=rt;
	an+=lt+rt;
}
int main(){
	freopen("edit.in","r",stdin);
	freopen("edit.out","w",stdout);
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>t;
	for(int it=1;it<=t;it++){
		cin>>n; an=0;
		cin>>a>>b>>c>>d;
		l=-1; r=-1; l1=0; r1=0; l0=0; r0=0;
		for(int i=0;i<n;i++){
			lm--; rm--;
			while(i<=l&&i<=r){
				i++; lm--; rm--;
			}
			if(l<i){
				ct=1;
				l=rl(l+1);
			}
			if(r<i){
				ct=1;
				r=rr(r+1);
			}
			if(ct==1)
			rp(i);
		}
		cout<<an<<"\n";
	}
	return 0;
} 
