#include<bits/stdc++.h>
using namespace std;
const int N = 2e5 + 5;
char s[N];
int main(){
int t, n;
scanf("%d", &t);
for(int i = 1; i <= t; ++i){
memset(s, '0', sizeof(s));
scanf("%d%s", &n, s);
int jl = -1;
int len = strlen(s), ans = 0;
for(int j = 0; j < len; ++j){
if(s[j] == '1'){
if(jl == -1) jl = j;
++ans;
}
}
if(ans % 2 == 1) printf("-1\n");
else{
if(n == 3 && ((s[0] == '1' && s[1] == '1' && s[2] == '0') || (s[0] == '0' && s[1] == '1' && s[2] == '1'))) printf("-1\n");
else if(n == 4 && s[1] == '1' && s[2] == '1'){printf("3\n");}
else if(ans == 2 && s[jl] == '1' && s[jl + 1] == '1'){printf("2\n");}
else{
printf("%d\n", ans / 2);
}
}
}
return 0;
}
过了样例,自己造的数据也都对