#include<iostream>
using namespace std;
#define int long long
const int N=2e6+10,MAXN=1e9+10;
int t,n,a[N],ans;
int op[N];
signed main(){
cin>>t;
while(t--){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
cin>>op[i];
}
if(op[1]==op[n]){
cout<<a[1]+a[n]<<endl;
continue;
}
ans=MAXN;
for(int i=1;i<n;i++){
if(op[i]==op[1] && op[i+1]==op[n]){
ans=min(ans,a[1]+a[i]+a[i+1]+a[n]);
}
}
cout<<ans<<endl;
}
return 0;
}