P11508 [ROIR 2017] 数据存放 (Day 1)
题目背景
翻译自 [ROIR 2017 D1T3](https://neerc.ifmo.ru/school/archive/2016-2017/ru-olymp-regional-2017-day1.pdf)。
题目描述
一家公司大型的电信网络包含了 $n$ 台服务器,编号从 $1$ 到 $n$。其中,有一些服务器对之间通过双向通信通道连接,共有 $m$ 个通道。保证该网络中的服务器通过这些通道可以相互通信。
我们称一个服务器集合 $A$ 被称为“容错集合”,当且仅当在任意一条通道失效的情况下,满足以下条件:
- 对于任何不属于集合 $A$ 的服务器 $X$,总能通过剩下的通道将数据从集合 $A$ 中的某一台服务器传输到服务器 $X$。
下图显示了一个网络和一个容错集合 $A=\{1,4\}$。
- 对于服务器 $2$,当服务器 $1$ 和 $2$ 之间的通道失效时,可以从服务器 $4$ 传输数据;当服务器 $2$ 和 $3$ 之间的通道失效时,可以从服务器 $1$ 传输数据。当其它通道失效时,两个服务器都可以向其传输数据。
- 对于服务器 $3$ 和 $5$,当任何通道失效时,可以通过其它通道从服务器 $4$ 传输数据。

公司的开发团队需要将他们的数据存放在这个网络中。为了提高数据的可用性和容错性,开发者希望将数据备份存储在多个服务器上,这些服务器需要形成一个容错集合。为了最小化开销,需要选择包含的服务器数量最少的容错集合。此外,为了了解网络的灵活性,还需要计算选择这个容错集合的不同方式的数量,由于这个数量可能很大,你只需要输出这个数对 $10^9 + 7$ 取模的结果。
输入格式
无
输出格式
无
说明/提示
### 样例解释
在样例中,容错集合可以为 $\{1, 3\},\{1, 4\} , \{1, 5\}$。
### 数据范围
本题满分为 $101$ 分。
| 子任务 | 分值 | $n$ | $m$ |
| :----------: | :----------: | :----------: | :----------: |
| $1$ | $25$ | $2\le n\le10$ | $1\le m\le45$ |
| $2$ | $27$ | $2\le n\le200000$ | $m=n-1$ |
| $3$ | $28$ | $2\le n\le1000$ | $1\le m\le5000$ |
| $4$ | $21$ | $2\le n\le200000$ | $1\le m\le200000$ |