스위치 배열

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

새로운 잠금 장치가 개발되었다.

이 장치는 열린 상태와 닫힌 상태를 갖는 스위치 s1,s2,,sNs_1, s_2, \ldots, s_N으로 이루어지고, 각 스위치의 상태는 0 또는 1이다. 따라서 장치의 상태는 0과 1로 이루어진 길이 NN의 스위치 배열로 나타낸다.

다음 표는 스위치가 8개인 배열의 예다.

스위치s1s_1s2s_2s3s_3s4s_4s5s_5s6s_6s7s_7s8s_8
상태01101100

스위치 NN개로 이루어진 배열에서 스위치를 작동시키는 규칙은 다음과 같다.

  • 규칙 1) sNs_N은 아무 때나 토글해서 상태를 바꿀 수 있다.
  • 규칙 2) si+1s_{i+1}이 1이고 si+2,si+3,,sN1,sNs_{i+2}, s_{i+3}, \ldots, s_{N-1}, s_N이 모두 0이면 sis_i를 토글해서 상태를 바꿀 수 있다. 이 규칙은 si+2,si+3,,sN1,sNs_{i+2}, s_{i+3}, \ldots, s_{N-1}, s_N에 해당하는 스위치가 아예 없을 때도 적용된다. 예를 들어 sN1s_{N-1}sNs_N이 1이기만 하면 토글할 수 있다.
  • 규칙 3) 한 번에 스위치 하나만 토글할 수 있다.

모든 스위치의 상태가 0이면 장치가 열린다.

위 규칙에 따라 주어진 배열을 모두 0으로 바꾸는 최소 토글 횟수를 구하라.

아래 표는 배열 1111을 0000으로 바꾸는 가장 짧은 과정이다. 1111은 최소 10번의 토글로 0000이 된다.

토글 횟수s1s_1s2s_2s3s_3s4s_4
01111
11101
21100
30100
40101
50111
60110
70010
80011
90001
100000

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다.

이어서 각 테스트 케이스마다 비트열 BB가 한 줄에 주어진다. BB의 첫 비트가 s1s_1이고 마지막 비트가 sNs_N이다.

BB의 길이는 2B312 \le |B| \le 31을 만족한다.

출력

각 테스트 케이스마다 모든 스위치를 0으로 만드는 최소 토글 횟수를 한 줄에 출력한다.