logo AlgoBeat OnlineJudge
登录 注册

#212960. 「o.OI R-1」青蛙平衡树

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

小 w 有一个二维点集 ,初始为空。

小 c 依次往 里面加入互不相同的 个点

小 c 会在每次操作后告诉小 w,当前 是否中心对称。

现在小 w 想知道任意一个合法的操作序列,如果不存在则报告无解。


称一个点集 中心对称当且仅当:

平面上存在一个点 ,使得对于任意 ,满足

输入格式

第一行一个正整数 表示操作次数。

第二行 个整数 ,其中 表示加入前 个点后 中心对称,否则表示不中心对称。

输出格式

如果无解,输出 No

否则第一行输出 Yes,接下来 行每行两个整数

你需要保证 ,且 互不相同。

样例

样例输入 1

4
1 1 1 0

样例输出 1

Yes
5 8
2 3
-1 -2
-3 -4

样例输入 2

9
0 0 0 1 1 1 0 0 0

样例输出 2

No

样例输入 3

25
1 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

样例输出 3

Yes
1 1
2 3
3 3
1 2
3 2
2 1
1 3
3 1
5 1
7 1
7 2
7 3
7 5
7 4
8 5
8 1
11 3
11 2
11 4
9 5
10 1
11 1
9 1
10 5
11 5

数据范围与提示

「样例解释」

本题采用捆绑测试。

对于所有测试数据,保证:

子任务 特殊性质 分值
保证数据随机