#L2089. 「ZJOI2016」随机树生成器
「ZJOI2016」随机树生成器
题目描述
小 Y 有一个随机数生成器,她想用它生成包含 个节点的树(树是一种无环的无向连通图)。她研究了四种随机树生成方法:
-
方法一:首先生成一个 到 的全排列 。接着对于每个节点 (),从 向 连一条边,其中 是 到 中的随机整数。
-
方法二:首先生成一个 到 的全排列 。接着对于每个节点 (),从 向 连一条边,其中 是 到 中的随机整数。
-
方法三:初始时有一个 个点的图,没有边。然后等概率随机生成点对 ,如果 和 在当前图中不连通,则将边 加入图中。重复此过程直到图连通。
-
方法四:在所有 个点的不同有标号树中,等概率随机选取一棵树。两棵树不同当且仅当存在一条边 只出现在其中一棵树中。
小 Y 用这四种方法生成了很多棵 个节点的树,但忘记了每棵树是用哪种方法生成的。你的任务是帮助她识别每棵树的生成方法。
输入格式
- 第一行包含一个正整数 ,表示测试数据组数。
- 接下来一个正整数 ,表示有 棵树。
- 对于每棵树,输入 行,每行包含两个正整数 ,表示树中的一条边。
输出格式
输出共 行,每行一个 到 之间的整数,表示该树的生成方法。
数据范围与提示
- 各测试点的 和生成方式出现情况如下:
| 测试点 | 约定 | |
|---|---|---|
| 1 | 只出现第 1、2 种方式 | |
| 2 | 只出现第 1、2、3 种方式 | |
| 3 | 只出现第 1、3、4 种方式 | |
| 4 | 无 | |
| 5 |
每个测试点中,每种可能出现的生成方式恰好出现 次。
评分方式
每个测试点有 个评分参数 。若你的输出中错误个数为 ,则得分 ,其中 是满足 的最大整数。如果 ,得 分。 如果输出格式有异常你将同样获得 分,请确保你的输出中共有 行,每行为一个 到 之间的正整数。 对于每个测试点的具体评分参数见附加文件中的 scores。