#CF2107E. 艾因与苹果树
艾因与苹果树
每个测试时间限制:2 秒
每个测试内存限制:256 兆字节
题目描述
如果我也被苹果树上的苹果砸中,我能变得和牛顿一样精通物理吗?
为了更擅长物理,艾因想建造一棵苹果树,这样她就能被树上的苹果砸中。她的苹果树有 个节点,并以节点 为根。她定义一棵苹果树的权值为:
$$\sum_{i=1}^{n} \sum_{j=i+1}^{n} \mathrm{dep}\big(\mathrm{lca}(i, j)\big) $$其中 定义为从节点 到节点 的唯一最短路径上的边数。 定义为同时出现在路径 和 上、且 值最大的唯一节点 。
从一些旧书中,艾因了解到牛顿的苹果树的权值大约是 ,但具体数值已经失传。
作为艾因的朋友,你想为她构建一棵有 个节点的苹果树,使得你的树的权值与 的绝对差不超过 ,即:
但可惜的是,有时这是不可能做到的,此时请报告无法实现。
输入格式
每个测试包含多个测试用例。
第一行包含一个整数 (),表示测试用例的数量。
接下来每个测试用例的格式如下:
- 第一行包含两个整数 (,)。
- 数据保证所有测试用例的 之和不超过 。
输出格式
对于每个测试用例:
- 第一行输出
Yes如果存在解,否则输出No。大小写不敏感,例如YES、yEs也可接受。 - 如果存在至少一个解,则接下来输出 行,每行包含两个整数 (),表示构建的苹果树的边。
示例
输入
5
2 1
2 2
4 0
5 7
5 5
输出
Yes
1 2
No
Yes
1 2
1 3
1 4
Yes
1 3
3 5
4 5
3 2
Yes
1 2
2 3
2 4
2 5
样例解释
第一个测试用例:
我们可以验证这棵树的权值是 。这满足条件,因为 ,绝对差仅为 。
第二个测试用例:
不存在解,因为 个节点的树权值只能是 ,而 需要权值为 之一,但无法达到。