#agc058c. [agc058_c]Planar Tree

[agc058_c]Planar Tree

题目描述

NN 个顶点构成了一个圆。这些顶点按顺时针顺序编号为 11NN,顶点 ii 上写着一个整数 AiA_i,其中 AiA_i 可能是 11223344。保证 AA 中至少包含一次 11223344

考虑通过添加 N1N-1 条边连接这 NN 个顶点来构造一棵树。同时需要满足以下条件:

  • 直接相连的两个顶点 xxyy,他们的数字满足 AxAy=1|A_x-A_y|=1

  • 如果将这些边绘制为线段,则除端点外,任意两条边不相交。

例如,下图展示了满足条件的一棵树:

figure1

确定是否可以构造满足条件的树。

对于每个输入文件,解决 TT 个测试用例。

约束条件

  • 1leqTleq750001 \\leq T \\leq 75000
  • 4leqNleq3000004 \\leq N \\leq 300000
  • 1leqAileq41 \\leq A_i \\leq 4
  • AA 中至少包含一次 11223344
  • 一个输入文件中 NN 的总和不超过 300000300000
  • 输入中的所有值均为整数。

输入格式

从标准输入中以以下格式获得输入:

TT case1case_1 case2case_2 vdots\\vdots caseTcase_T

每个测试用例的格式如下:

NN A1A_1 A2A_2 cdots\\cdots ANA_N

输出格式

对于每个测试用例,如果可以构造满足条件的树,则打印 Yes,否则打印 No


样例输入 1

3
4
1 2 3 4
4
1 3 4 2
4
1 4 2 3

样例输出 1

Yes
Yes
No

样例输入 2

3
8
4 2 3 4 1 2 2 1
8
3 2 2 3 1 3 3 4
8
2 3 3 2 1 4 1 4

样例输出 2

Yes
Yes
No

第一个测试用例对应题目描述中的图示。