CF2107E.Ain and Apple Tree

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

如果我也被从苹果树上掉下的苹果砸中,我能变得像牛顿一样擅长物理吗?

为了更擅长物理,Ain 想建造一棵苹果树,这样她就能被树上的苹果砸中。她的苹果树有 nn 个节点,根节点为 11。她将苹果树的权重定义为 ∑i=1n∑j=i+1ndep(lca⁡(i,j))\sum \limits_{i=1}^n \sum \limits_{j=i+1}^n \text{dep}(\operatorname{lca}(i,j))。

这里,dep(x)\text{dep}(x) 定义为从节点 11 到节点 xx 的唯一最短路径上的边数。lca⁡(i,j)\operatorname{lca}(i, j) 定义为在路径 (1,i)(1, i) 和 (1,j)(1, j) 上同时出现且 dep(x)\text{dep}(x) 值最大的唯一节点 xx。

Ain 从一些旧书中得知,牛顿的苹果树的权重大约是 kk,但具体的值已经丢失了。

作为 Ain 的朋友,你想为她建造一棵有 nn 个节点的苹果树,且树的权重与 kk 的绝对差不超过 11,即 ∣权重−k∣≤1|\text{权重} - k| \le 1。如果无法满足这一条件,请报告这一情况。

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 tt(1≤t≤1041 \le t \le 10^4)。接下来是测试用例的描述。

每个测试用例的第一行包含两个数字 n,kn, k(2≤n≤1052 \le n \le 10^5,0≤k≤10150 \le k \le 10^{15})。

保证所有测试用例的 nn 之和不超过 2⋅1052 \cdot 10^5。

输出格式

对于每个测试用例,如果存在解,首先输出 Yes,否则输出 No。你可以使用任意大小写,例如 YES 和 yEs 也会被接受。

如果至少存在一个解,则输出 n−1n-1 行,每行包含两个数字 u,vu, v(1≤u,v≤n1 \le u, v \le n),表示苹果树的边。

输入输出样例

  • 输入#1

    5
    2 1
    2 2
    4 0
    5 7
    5 5

    输出#1

    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

说明/提示

在第一个测试用例中,我们可以验证权重为 00。这满足条件,因为 k=1k = 1,所以绝对差仅为 11。

在第二个测试用例中,不存在解,因为没有 22 个节点的树的权重为 11、22 或 33。

翻译由 DeepSeek V3 完成

输入解题思路,AI测评打分。不知道怎么写?

首页