#P13181. [GCJ 2017 Finals] Spanning Planning
[GCJ 2017 Finals] Spanning Planning
Description
一个无向图的生成树,是指在只使用该图已有边的前提下,包含所有 个节点、且恰好有 条边、并且是一棵树的子图。
请你构造一个至少包含 个节点、且不超过 个节点的图,使得该图恰好有 种不同的生成树。(当且仅当两棵生成树所用的边集合不同,这两棵生成树才被认为是不同的。)图中每对节点之间至多有一条边,且不得包含自环(即节点与自身相连的边)。
保证对于下述范围内的每个 ,都至少存在一种满足条件的图。
Input Format
输入的第一行包含一个整数 ,表示测试用例的数量。接下来有 组测试用例,每组测试用例包含一行,内有一个整数 ,表示期望的生成树数量。
Output Format
对于每个测试用例,首先输出一行 Case #x: y,其中 表示测试用例编号(从 开始), 表示你构造的图的节点数( 必须在 到 之间)。接下来输出 行,每行 个字符,表示该图的邻接矩阵。第 行第 列为 ,表示第 个节点与第 个节点之间有一条边;为 ,表示没有边。注意,该邻接矩阵是对称的,且主对角线上的元素均为 。
如果存在多种答案,你可以输出任意一种。保证对于下述范围内的每个 ,都至少存在一种合法解。
2
3
8
Case #1: 3
011
101
110
Case #2: 4
0111
1001
1001
1110
Hint
样例解释
在第 1 个用例中,图是一个三角形,去掉任意一条边都能得到一棵不同的生成树。
在第 2 个用例中,解中的可用边为 、、、 和 。这 8 棵不同的生成树分别由如下边集定义:
- 、、
- 、、
- 、、
- 、、
- 、、
- 、、
- 、、
- 、、
限制条件
- 。
小数据集(30 分,测试集 1 - 可见)
- 。
翻译由 GPT4.1 完成。
京公网安备 11011102002149号