CFCF2162G.Beautiful Tree

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

树是一种没有环的连通图。

如果一棵树所有边的端点标签的乘积之和为完全平方数,则称这棵树是美丽的。

更正式地,设 EE 是树的边集。如果有

S={u,v}E(uv)S = \sum_{\{u, v\} \in E} (u \cdot v)

是一个完全平方数,即存在整数 xx 使得 S=x2S = x^2,则称这棵树是美丽的。

给定一个整数 nn,你的任务是构造一个包含 nn 个顶点的美丽树,或者报告不存在这样的树。

输入格式

输入的第一行包含一个整数 tt1t1041 \le t \le 10^4),表示测试用例的个数。

每个测试用例包含一个整数 nn2n2×1052 \le n \le 2\times10^5)。

保证所有测试用例中 nn 的总和不超过 2×1052\times10^5

输出格式

对于每个测试用例,如果不存在包含 nn 个顶点的美丽树,输出 1-1

否则,输出 n1n-1 行,每行两个空格分隔的整数 u,vu, v1u,vn1 \le u, v \le n),表示一条边。

同一条边的两个端点顺序可以互换,边的输出顺序不限。

输入输出样例

  • 输入#1

    3
    2
    3
    4

    输出#1

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

说明/提示

测试点 1:不存在包含 22 个顶点的美丽树,因此输出 1-1

测试点 2:

S=(23)+(13)=9=(3)2S = (2\cdot3) + (1\cdot3) = 9 = (3)^2

测试点 3:

S=(21)+(31)+(41)=9=(3)2S = (2\cdot1) + (3\cdot1) + (4\cdot1) = 9 = (3)^2

首页