#P6998. [NEERC 2013] Cactus Automorphisms
[NEERC 2013] Cactus Automorphisms
Description
NEERC 在前几年中曾出现过一些关于仙人掌图的问题——仙人掌图是一个连通的无向图,其中每条边最多属于一个简单环。从直观上看,仙人掌图是树的一种推广,其中允许存在一些环。
在 2005 年,首次出现关于仙人掌图的问题时,问题被简单地称为“Cactus”。在 2007 年,它被称为“Cactus Reloaded”,而在 2010 年,它被称为“Cactus Revolution”。下图展示了 NEERC 2007 年问题中的一个仙人掌图示例。

在为这些问题准备测试用例时,评委面临的挑战是,一些错误的解决方案可能依赖于输入文件中顶点的编号。因此,对于最有趣的测试用例,评委通常会包含几个具有相同图但顶点编号不同的输入。然而,有些图是如此规则,以至于即使重新编号其顶点,图仍保持不变。评委需要一些关于图的度量来判断给定图的规则性,以便对需要为该图创建的测试用例数量做出客观决定。
你需要计算的度量是图的自同构数量。给定一个无向图 ,其中 是顶点集, 是边集,每条边是由两个不同顶点组成的集合 ,图的自同构是一个从 到 的双射 ,使得对于每对由边连接的顶点 和 (即 ),以下条件成立:。
每个图至少有一个自同构(当 是恒等函数时),对于具有 个顶点的图,最多可能有 个自同构。由于自同构的数量可能是一个非常大的数字,答案必须以素因数分解的形式呈现 ,其中 是按升序排列的素数 。
Input Format
输入文件的第一行包含两个整数 和 。这里 是图中的顶点数。顶点从 到 编号。图的边由一组边不重复的路径表示,其中 是这样的路径数。
接下来的 行中的每一行包含图中的一条路径。路径以一个整数 开头,后跟 个从 到 的整数。这些 个整数表示路径的顶点。路径中的相邻顶点是不同的。路径可以多次经过同一顶点,但整个输入文件中每条边恰好被遍历一次。图中没有重边(任意两个顶点之间最多有一条边)。
输入文件中的图是一个仙人掌图。
Output Format
在输出文件的第一行写入数字 ——图自同构数量的素因数分解中的素因子数量。如果图自同构的数量是 ,则写入 。在接下来的 行中写入素数 及其幂 ,用空格分隔。素数必须按升序给出。
15 3
9 1 2 3 4 5 6 7 8 3
7 2 9 10 11 12 13 10
5 2 14 9 15 10
1
2 2
2 1
2 1 2
1
2 1
15 7
3 1 2 3
3 4 2 5
3 6 2 7
3 8 2 9
3 10 2 11
3 12 2 13
3 14 2 15
6
2 11
3 5
5 2
7 2
11 1
13 1
Hint
时间限制:5 秒,内存限制:256 MB。
题面翻译由 ChatGPT-4o 提供。
京公网安备 11011102002149号