AT_tenka1_2015_qualA_d ハシポン

题目描述

在一个连通图中,如果去掉某条边后图变为非连通,则称这条边为桥。 不包含自环和重边的图称为简单图。 渡边同学将恰好包含 1 条桥的简单图命名为“哈希蓬图”。 给定一个连通的无向简单图,请求出最少需要添加多少条边才能使其变为哈希蓬图。 如果无法变为哈希蓬图,则输出 `IMPOSSIBLE`。

输入格式

输入从标准输入按以下格式给出。 > $V$ $E$ > $a_1$ $b_1$ > $a_2$ $b_2$ > $\vdots$ > $a_E$ $b_E$ - 第 1 行给出图的顶点数 $V$($1 \leq V \leq 100,\!000$)和边数 $E$($0 \leq E \leq 150,\!000$),以空格分隔。 - 接下来的 $E$ 行中,第 $i$ 行给出一条边连接的顶点编号 $a_i$ 和 $b_i$($0 \leq a_i, b_i \leq V-1$),以空格分隔。 - 保证给定的图是连通的无向简单图。

输出格式

请输出最少需要添加的边数,或 `IMPOSSIBLE`。输出应占一行,末尾需换行。

说明/提示

## 配分 本题设置了部分分。 - 若能通过所有 $V \leq 20$ 的测试点,得 $35$ 分。 - 若能通过所有 $V \leq 2000$ 的测试点,得 $30$ 分。 - 若能通过所有测试点,额外得 $55$ 分。 ## 样例解释 1 给定的图已经是哈希蓬图。 ## 样例解释 2 例如,添加一条连接顶点 1 和顶点 4 的边后,可以使图变为哈希蓬图。 ## 样例解释 3 哈希蓬图必须是简单图。 由 ChatGPT 4.1 翻译