#W1115. 网络攻击

网络攻击

【题目描述】

QQ 是名为 SNSN 公司的网络管理员。现在她非常焦虑,因为她刚刚收到一则坏消息:SNSN 的商业竞争对手 DNDN 公司的黑客打算攻击 SNSN 的网络。更糟糕的是,SNSN 原本的网络架构十分脆弱,我们可以将其视作一棵树。

严格来说,SNSN 的网络中有 NN 个节点,通过 N1N−1 条双向通道连接所有节点,并且任意两个节点之间都存在唯一的连通路径。为了抵御攻击,小 QQ 在部分节点之间额外搭建了 MM 条双向通道。

你作为 DNDN 最顶尖的黑客,你恰好可以破坏两条通道:一条是原网络中的通道,另一条是新增的 MM 条通道之一。

你的上级想知道:有多少种破坏方式,可以将 SNSN 的网络分割成至少两个互不连通的部分?

【输入格式】

第一行输入两个整数:NNMM,分别表示节点数量和新增通道数量。

接下来 N1N−1 行,每行两个整数 a,ba,b,表示原网络中节点 aa 和节点 bb 之间有一条通道。

接下来 MM 行,每行两个整数 a,ba,b,表示新增的通道连接节点 aa 和节点 bb

【输出格式】

输出一个整数,表示能将网络分割成至少两个部分的破坏方案总数。

【样例 1】

4 1
1 2
2 3
1 4
3 4
3

【样例 1 解释】

删除 [(3,4),(2,3)][(3,4),(2,3)] 或者 [(3,4),(1,2)][(3,4),(1,2)] 或者 [(3,4),(1,4)][(3,4),(1,4)] 都可以使得 SNSN 公司的网络分割成两个互不连通的部分

【数据规模与约定】

对于 100%100\% 的数据满足:

  • 1n1051 \le n \le 10^5
  • 1m1051 \le m \le 10^5
  • 1a,bn1 \le a, b \le n 且输入保证是一棵树