一个仅由字符 ( 和 ) 组成的字符串 $S$ 被称为合法括号序列,当且仅当它满足以下任一条件:
- $S$ 是空字符串。
- $S$ 由
(、序列 $A$ 和)依次连接而成,其中 $A$ 是一个合法括号序列。 - $S$ 由序列 $A$ 和 $B$ 依次连接而成,其中 $A$ 和 $B$ 均为非空的合法括号序列。
给定整数 $N, K$ 以及一个长度为 $2K$ 的整数序列 $A = (A_1, A_2, \dots, A_{2K})$。请判断是否存在一个包含 $N$ 个合法括号序列的元组,满足以下条件:
- 这 $N$ 个合法括号序列的长度均为 $2K$。
- 对于 $i = 1, 2, \dots, 2K$,在这 $N$ 个合法括号序列中,第 $i$ 个字符为
(的序列恰好有 $A_i$ 个。
给定 $T$ 组测试数据。请分别回答每组测试数据。
输入格式
输入格式如下:
$T$ $case_1$ $case_2$ $\vdots$ $case_T$
每组测试数据的格式如下:
$N \ K$ $A_1 \ A_2 \ \dots \ A_{2K}$
- 所有输入值均为整数。
- $1 \le T \le 10^5$
- $1 \le N \le 10^{12}$
- $1 \le K \le 2 \times 10^5$
- $0 \le A_i \le N$
- 所有测试数据的 $K$ 之和不超过 $5 \times 10^5$。
输出格式
输出 $T$ 行。第 $i$ 行应包含第 $i$ 组测试数据的答案。如果存在满足条件的 $N$ 个合法括号序列的元组,则输出 Yes;否则输出 No。
样例
样例输入 1
2 3 3 3 2 2 0 2 0 3 3 3 0 2 3 1 0
样例输出 1
Yes No
说明
在第一组测试数据中,元组 ()()(), ((())), (())() 满足条件。在第二组测试数据中,不存在满足条件的 3 个合法括号序列的元组。