CF1777A.Everybody Likes Good Arrays!

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Everybody Likes Good Arrays!

An array aa is good if for all pairs of adjacent elements, aia_i and ai+1a_{i+1} (1i<n1\le i \lt n) are of different parity. Note that an array of size 11 is trivially good.

You are given an array of size nn.

In one operation you can select any pair of adjacent elements in which both elements are of the same parity, delete them, and insert their product in the same position.

Find the minimum number of operations to form a good array.

Input

Each test contains multiple test cases. The first line contains the number of test cases tt (1t5001 \le t \le 500). The description of the test cases follows.

The first line of each test case contains an integer nn (1n1001 \le n \le 100).

The second line of each test case contains nn integers a1,a2,,ana_1,a_2,\ldots,a_n (1ai1091 \le a_i \le 10^{9}).

Output

For each test case print an integer, the minimum number of operations required to form a good array.

Note

Consider the first test case. Select the 22-nd and the 33-rd integers and apply the operation on them. The array changes from [1,7,11,2,13][1, \color{red}{7}, \color{red}{11}, 2, 13] to [1,77,2,13][1, \color{red}{77}, 2, 13]. Next, select the 11-st and the 22-nd integers, array changes from [1,77,2,13][\color{red}{1}, \color{red}{77}, 2, 13] to [77,2,13][\color{red}{77}, 2, 13]. Thus we require 22 operations. It can be proved that this is the minimum number of operations.

In the second test case, the given array is already good. So we require 00 operations.

Samples

3
5
1 7 11 2 13
4
1 2 3 4
6
1 1 1 2 2 3
2
0
3

在线编程 IDE

建议全屏模式获得最佳体验