#ifndef ONLINE_JUDGE
#define gc getchar //getchar_unlocked &putchar_unlocked are faster than others
#define pc putchar
#else
#define gc getchar_unlocked
#define pc putchar_unlocked
#endif
#include<stdio.h>
//#include<iostream>
//#include<>
//using namespace std;
inline int input( )
{
int n=0;
register int ch=gc();
while( ch >= '0' && ch <= '9' )
{
n = (n<<3)+(n<<1) + ch-'0';
ch=gc();
}
return n;
}
inline void str_input(char *str)
{
register char c=0;
register int i = 0;
c = gc();
while (c!=32 && c!=10) // 32= space and 10= new line. If want to include
{ // spaces in string remove c!=32.
str[i] = c;
c = gc();
i = i + 1;
}
str[i] = '\0';
}
int main()
{
int t;
t=input();
while(t--)
{
int i=1,n=input();
char s[1002];
str_input(s);
if(s[0]=='1')
{
s[0]='*';
if(s[1]!='1')
{
s[1]='*';
i=2;
}
}
for( ; i<n; i++)
{
if(s[i]=='1')
{
s[i-1]='*';
s[i]='*';
if(s[i+1]!='1' && s[i+1]!='\0')
{
s[i+1]='*';
i++;
}
}
}
int cnt=0;
for( i=0; i<n; i++)
{
if(s[i]!='*')
cnt++;
}
printf("%d \n",cnt);
}
return 0;
}
I2lmbmRlZiBPTkxJTkVfSlVER0UKI2RlZmluZSBnYyBnZXRjaGFyIC8vZ2V0Y2hhcl91bmxvY2tlZCAmcHV0Y2hhcl91bmxvY2tlZCBhcmUgZmFzdGVyIHRoYW4gb3RoZXJzCiNkZWZpbmUgcGMgcHV0Y2hhcgojZWxzZQojZGVmaW5lIGdjIGdldGNoYXJfdW5sb2NrZWQKI2RlZmluZSBwYyBwdXRjaGFyX3VubG9ja2VkCiNlbmRpZgogCiAKI2luY2x1ZGU8c3RkaW8uaD4KIAovLyNpbmNsdWRlPGlvc3RyZWFtPgovLyNpbmNsdWRlPD4KLy91c2luZyBuYW1lc3BhY2Ugc3RkOwogCiAKaW5saW5lIGludCBpbnB1dCggKQp7CmludCBuPTA7CnJlZ2lzdGVyIGludCBjaD1nYygpOwp3aGlsZSggY2ggPj0gJzAnICYmIGNoIDw9ICc5JyApCnsKbiA9IChuPDwzKSsobjw8MSkgKyBjaC0nMCc7CmNoPWdjKCk7Cn0KcmV0dXJuIG47Cn0KIAogCmlubGluZSB2b2lkIHN0cl9pbnB1dChjaGFyICpzdHIpCnsKcmVnaXN0ZXIgY2hhciBjPTA7CnJlZ2lzdGVyIGludCBpID0gMDsKIApjID0gZ2MoKTsKd2hpbGUgKGMhPTMyICYmIGMhPTEwKSAvLyAzMj0gc3BhY2UgYW5kIDEwPSBuZXcgbGluZS4gSWYgd2FudCB0byBpbmNsdWRlCnsgLy8gc3BhY2VzIGluIHN0cmluZyByZW1vdmUgYyE9MzIuCnN0cltpXSA9IGM7CmMgPSBnYygpOwppID0gaSArIDE7Cn0KIApzdHJbaV0gPSAnXDAnOwp9CiAKIAogCiAKaW50IG1haW4oKQp7CmludCB0Owp0PWlucHV0KCk7CndoaWxlKHQtLSkKewppbnQgaT0xLG49aW5wdXQoKTsKY2hhciBzWzEwMDJdOwpzdHJfaW5wdXQocyk7CiAKaWYoc1swXT09JzEnKQp7CnNbMF09JyonOwppZihzWzFdIT0nMScpCnsKc1sxXT0nKic7Cmk9MjsKfQp9CiAKZm9yKCA7IGk8bjsgaSsrKQp7CmlmKHNbaV09PScxJykKewpzW2ktMV09JyonOwpzW2ldPScqJzsKaWYoc1tpKzFdIT0nMScgJiYgc1tpKzFdIT0nXDAnKQp7CnNbaSsxXT0nKic7CmkrKzsKfQp9Cn0KaW50IGNudD0wOwpmb3IoIGk9MDsgaTxuOyBpKyspCnsKaWYoc1tpXSE9JyonKQpjbnQrKzsKfQpwcmludGYoIiVkIFxuIixjbnQpOwp9CnJldHVybiAwOwp9Cg==