def binary_cut(s):
no_of_pieces = 0
ptr = 0
while ptr < len(s):
while ptr < len(s) and s[ptr] == '1':
ptr += 1
start = ptr
while ptr < len(s) and s[ptr] == '0':
ptr += 1
if ptr >= len(s):
break
else:
no_of_pieces += 1
while ptr < len(s) and s[ptr] == '1':
ptr += 1
end = ptr
s = s[:start] + s[end:]
break
ptr = 0
while ptr < len(s):
if s[ptr] == '0':
while ptr < len(s) and s[ptr] == '0':
ptr += 1
no_of_pieces += 1
else:
while ptr < len(s) and s[ptr] == '1':
ptr += 1
no_of_pieces += 1
return no_of_pieces
T = int(input())
for _ in range(T):
S = input()
print(binary_cut(S))
466C - Number of Ways | 1146A - Love "A" |
1618D - Array and Operations | 1255A - Changing Volume |
1710C - XOR Triangle | 415C - Mashmokh and Numbers |
8A - Train and Peter | 591A - Wizards' Duel |
1703G - Good Key Bad Key | 1705A - Mark the Photographer |
1707A - Doremy's IQ | 1706B - Making Towers |
1325B - CopyCopyCopyCopyCopy | 1649C - Weird Sum |
1324B - Yet Another Palindrome Problem | 525A - Vitaliy and Pie |
879A - Borya's Diagnosis | 1672B - I love AAAB |
1673A - Subtle Substring Subtraction | 1345A - Puzzle Pieces |
711A - Bus to Udayland | 779B - Weird Rounding |
1703D - Double Strings | 1704C - Virus |
63A - Sinking Ship | 1704B - Luke is a Foodie |
298B - Sail | 239A - Two Bags of Potatoes |
1704E - Count Seconds | 682A - Alyona and Numbers |