CF2141H.Merging Vertices in a Graph
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个无向图,最初包含 n 个顶点和 m 条边。你可以对该图进行如下操作:
- 任意选择两个不同的顶点,将它们删除,并插入一个新顶点,使其与所有同时与所选两个顶点相连的顶点建立边。即,如果选择了顶点 u 和 v,新顶点为 x,则对于所有满足 (u,y) 和 (v,y) 边均存在的顶点 y,添加新的边 (x,y)。
该操作可以进行任意多次,直到图中存在一个顶点与所有其他顶点直接有边相连。一旦出现这样的顶点,过程立即结束。此外,如果最初图中就存在这样的顶点,则不能进行任何操作。
你的任务是统计最少和最多可以进行多少次操作。
输入格式
第一行包含两个整数 n 和 m(1≤n≤2⋅105,0≤m≤min(2n(n−1),2⋅105))。
接下来的 m 行中,第 i 行包含两个整数 xi,yi(1≤xi,yi≤n,xi=yi),表示第 i 条边的两个端点。任意一对顶点之间至多只有一条边。
输出格式
输出两个整数,分别表示最少和最多可以进行的操作次数。
输入输出样例
输入#1
5 7 1 2 3 2 2 4 3 5 1 4 5 1 4 3
输出#1
1 4
说明/提示
在第一个样例中,最短的操作序列如下:
- 选择顶点 1 和 3,新顶点会与 2、4、5 相连,且图中没有其他顶点。
最长的操作序列如下:
- 选择顶点 1 和 5。记新顶点为 6,它不会与剩下的任何顶点相连。
- 选择顶点 2 和 4。记新顶点为 7,它会与顶点 3 相连。
- 选择顶点 7 和 3。记新顶点为 8,它不会与剩下的任何顶点相连。
- 选择顶点 6 和 8。现在图中只剩下一个顶点,因此它与所有其他顶点相连。
在第二个样例中,图中已经存在与所有其它顶点相连的顶点,因此无法进行任何操作。
在第三个样例中,无论采用何种方式,都需要 199999 次操作才能只剩下一个顶点。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?