0...01...1或1...10...0(包含全0、全1退化情况)。k,计算两种形态代价:
0...01...1:前缀中1的数量 + 后缀中0的数量;1...10...0:前缀中0的数量 + 后缀中1的数量。0/1个数,单个k可O(1)求值,整体O(n)。给定一个只包含字符 0 和 1 的字符串。Alice 不喜欢“0 和 1 交替”的样式,她认为“好看”的字符串必须满足:其所有 0 字符(如果存在)形成一个连续的块,其所有 1 字符(如果存在)也形成一个连续的块。
Alice 可以进行若干次操作,每次操作可以把字符串中任意一个位置的字符改成 0 或 1。
请你计算:把给定的字符串变为“好看”需要的最少操作次数。
每个测试文件均包含多组测试数据。第一行输入一个整数 T (1≤T≤105) 表示测试组数。随后每组数据包含:
保证所有测试中 n 的总和不超过 4×105。
对于每组数据,输出一个整数,表示把字符串变为“好看”所需的最少操作次数。
输入
3
5
01010
4
1111
7
1011000
输出
2
0
1
说明