#T2245. 欧拉子图(Eulerian Subgraphs)

欧拉子图(Eulerian Subgraphs)

链接: https://cses.fi/problemset/task/2078

板块: Advanced Techniques

时限: 1.00 s | 内存: 512 MB

题目描述

给定一个无向图,包含 nn 个节点和 mm 条边。

我们考虑包含原图全部节点、以及其中部分边的子图。若每个节点的度数均为偶数,则称该子图为「欧拉子图」。

你的任务是统计欧拉子图的数量,结果对 109+710^9+7 取模。

输入

第一行有两个整数 nnmm:节点数与边数。节点编号为 1,2,,n1,2,\dots,n

之后有 mm 行描述边。每行有两个整数 aabb:节点 aa 与节点 bb 之间有一条边。任意两个节点之间最多只有一条边,且每条边连接两个不同的节点。

输出

输出欧拉子图的数量,结果对 109+710^9+7 取模。

数据范围

1n1051 \le n \le 10^5 0m21050 \le m \le 2 \cdot 10^5 1a,bn1 \le a,b \le n

样例输入

4 3
1 2
1 3
2 3

样例输出

2