CF2276D Caveman

题目描述

Monocarp 画了一个无向图,其中有 $n$ 个顶点和 $m$ 条边。他希望将每个顶点染成红色或蓝色,并满足每个顶点至少有一个相邻的顶点颜色与其不同。他需要计算有多少种满足条件的染色方案。 Monocarp 是个原始人:他只认识数字 $1$、$2$ 和“many”(表示大于 $2$ 的任何数字)。他不知道零的概念,因此如果没有满足条件的染色方案,他会“脑子宕机”。 请帮 Monocarp 用他的方式统计合法的染色方案数。如果存在多个染色方案,只要任意一个点的染色不同,这些方案就被认为是不同的。

输入格式

第一行包含一个整数 $t$($1 \leq t \leq 10^4$),表示测试用例的个数。 每个测试用例的第一行包含两个整数 $n$ 和 $m$($3 \leq n \leq 3 \times 10^5$;$0 \leq m \leq \min\left(\frac{n(n-1)}{2}, 3 \times 10^5\right)$),表示顶点和边的数量。 接下来的 $m$ 行,每行包含两个整数 $u_i$ 和 $v_i$($1 \leq u_i, v_i \leq n$),表示第 $i$ 条边所连接的两个顶点的编号。图中没有自环和重边。 输入的额外限制: - 所有测试用例中 $n$ 的总和不超过 $3 \times 10^5$,$m$ 的总和也不超过 $3 \times 10^5$。

输出格式

对于每个测试用例,单独输出一行: - 如果合法染色方案数为 $1$,输出 1。 - 如果合法染色方案数为 $2$,输出 2。 - 如果方案数大于 $2$,输出 Many。 - 如果没有合法方案,输出 Brain Melt。

说明/提示

由 ChatGPT 5 翻译