#DP1050. Sending a Sequence Over the Network

Sending a Sequence Over the Network

描述

The sequence aa is sent over the network as follows:

1.sequence aa is split into segments (each element of the sequence belongs to exactly one segment, each segment is a group of consecutive elements of sequence); 2.for each segment, its length is written next to it, either to the left of it or to the right of it; 3.the resulting sequence bb is sent over the network.

For example, we needed to send the sequence a=[1,2,3,1,2,3]a = [1, 2, 3, 1, 2, 3]. Suppose it was split into segments as follows: $[\color{red}{1}] + [\color{blue}{2, 3, 1}] + [\color{green}{2, 3}]$. Then we could have the following sequences:

•$b = [1, \color{red}{1}, 3, \color{blue}{2, 3, 1}, \color{green}{2, 3}, 2]$,

•$b = [\color{red}{1}, 1, 3, \color{blue}{2, 3, 1}, 2, \color{green}{2, 3}]$,

•$b = [\color{red}{1}, 1, \color{blue}{2, 3, 1}, 3, 2, \color{green}{2, 3}]$,

•$b = [\color{red}{1}, 1,\color{blue}{2, 3, 1}, 3, \color{green}{2, 3}, 2]$.

If a different segmentation had been used, the sent sequence might have been different.

The sequence bb is given. Could the sequence bb be sent over the network? In other words, is there such a sequence aa that converting aa to send it over the network could result in a sequence bb?

格式

输入

The first line of input data contains a single integer tt (1t1041 \le t \le 10^4) — the number of test cases.

Each test case consists of two lines.

The first line of the test case contains an integer nn (1n21051 \le n \le 2 \cdot 10^5) — the size of the sequence bb.

The second line of test case contains nn integers b1,b2,,bnb_1, b_2, \dots, b_n (1bi1091 \le b_i \le 10^9) — the sequence bb itself.

It is guaranteed that the sum of nn over all test cases does not exceed 21052 \cdot 10^5.

输出

For each test case print on a separate line:

•YES if sequence bb could be sent over the network, that is, if sequence bb could be obtained from some sequence aa to send aa over the network.

•NO otherwise.

样例

7
9
1 1 2 3 1 3 2 2 3
5
12 1 2 7 5
6
5 7 8 9 10 3
4
4 8 6 2
2
3 1
10
4 6 2 1 9 4 9 3 4 2
1
1
YES
YES
YES
NO
YES
YES
NO

提示

In the first case, the sequence bb could be obtained from the sequence a=[1,2,3,1,2,3]a = [1, 2, 3, 1, 2, 3] with the following partition: $[\color{red}{1}] + [\color{blue}{2, 3, 1}] + [\color{green}{2, 3}]$. The sequence bb: $[\color{red}{1}, 1, \color{blue}{2, 3, 1}, 3, 2, \color{green}{2, 3}]$.

In the second case, the sequence bb could be obtained from the sequence a=[12,7,5]a = [12, 7, 5] with the following partition: [12]+[7,5][\color{red}{12}] + [\color{green}{7, 5}]. The sequence bb: [12,1,2,7,5][\color{red}{12}, 1, 2, \color{green}{7, 5}].

In the third case, the sequence bb could be obtained from the sequence a=[7,8,9,10,3]a = [7, 8, 9, 10, 3] with the following partition: [7,8,9,10,3][\color{red}{7, 8, 9, 10, 3}]. The sequence bb: [5,7,8,9,10,3][5, \color{red}{7, 8, 9, 10, 3}].

In the fourth case, there is no sequence aa such that changing aa for transmission over the network could produce a sequence bb.