题目描述
你有一个长度为 n 的数组 a,其中每个元素都为 0 或 1 。你可以对这个序列执行几次操作(可以不操作)。在每次操作中,选择两个整数 1≤l≤r≤n,并用 [l,r] 的“多数”替换该区间。
对区间的“多数”定义如下:
设该区间中有 c0 个 0,c1 个 1。
例如,设 a=[1,0,0,0,1,1],如果 l=1,r=2,序列将变为 [0,0,0,1,1]。如果 l=4,r=6,序列将变为 [1,0,0,1]。
你能否用有限的操作使 a=[1]?
输入格式
每个测试点包含多个测试样例。
第一行为包含测试样例的数量 t;
每个测试样例的第一行包含一个整数 n;
第二行为一个由 0 和 1 组成的字符串,描述序列 a。
输出格式
如果可以用有限的操作使 a=[1],输出 YES ,否则输出 NO 。
你可以以任何大写或小写的形式输出答案。例如,字符串 yEs,yes,Yes 和 YES 都将被视为肯定的回答。
说明/提示
在第四个测试样例中,最初 a=[1,0,0,0,0,0,0,0,1] 一个有效的操作序列是:
-
选择 l=2,r=8 并执行操作,使 a=[1,0,1]。
-
选择 l=1,r=3 并执行操作,使 a=[1]。
数据范围
1≤t≤4×104
∑n≤2×105