atcoder#RELAY2I. Nice to Meet You

Nice to Meet You

题目描述

りんご海に N N 個の島が浮かんでおり、M M 社の業者がこれらの島を結ぶ船便を運行しています。便宜上、これらの島を島 1, 1, 2, 2, , …, N N と呼び、これらの業者を業者 1 1 , 2 2 , , …, M M と呼びます。

りんご海の海流は毎日大きく変わります。業者 i i (1 < = i < = M) (1\ <\ =\ i\ <\ =\ M) は、その日の海の状況に応じて、島 ai a_i から bi b_i への便または島 bi b_i から ai a_i への便のどちらか一方のみを運行します。どちらの方向の便が運行されるかは、それぞれの業者について独立に、等確率で決定されるものとします。

いま、島 1 1 に高橋くんが、島 2 2 に低橋くんがいます。M M 社の業者による船便を用いて、高橋くんと低橋くんがその日のうちに同じ島に移動することができる確率を P P とします。ただし、船の所要時間などは無視します。このとき、P × 2M P\ ×\ 2^M は整数となります。P × 2M P\ ×\ 2^M 109 + 7 10^9\ +\ 7 で割ったあまりを求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N M M a1 a_1 b1 b_1 : : aM a_M bM b_M

输出格式

P × 2M P\ ×\ 2^M 109 + 7 10^9\ +\ 7 で割ったあまりを出力せよ。

题目大意

给定一张无向图,需要给每一条边定向,求1号点和2号点能到达相同点的方案数。

4 3
1 3
2 3
3 4
6
5 5
1 3
2 4
3 4
3 5
4 5
18
6 6
1 2
2 3
3 4
4 5
5 6
1 6
64

提示

制約

  • 2 < = N < = 15 2\ <\ =\ N\ <\ =\ 15
  • 1 < = M < = N(N1)/2 1\ <\ =\ M\ <\ =\ N(N-1)/2
  • 1 < = ai < bi < = N 1\ <\ =\ a_i\ <\ b_i\ <\ =\ N
  • (ai, bi) (a_i,\ b_i) はすべて異なる。

Sample Explanation 1

![36cba65088d9b1224a6ce9665aa44048.png](https://img.atcoder.jp/relay2/36cba65088d9b1224a6ce9665aa44048.png) 上図に示した 2M = 8 2^M\ =\ 8 通りの状況が等確率で発生し、そのうち高橋くんと低橋くんが同じ島で出会える状況は 6 6 通りです。したがって、P = 6/2M, P\ =\ 6/2^M, P × 2M = 6 P\ ×\ 2^M\ =\ 6 となります。