|
||||||||||
交通灯Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65535/102400 K (Java/Others)Total Submission(s): 217 Accepted Submission(s): 65 Problem Description 相信交通灯对于你来说并不陌生,交通灯分为红色和绿色两个阶段,这两个阶段互相更替,保障着道路的安全。 在杭州一共有$n$个路口,编号依次为$1$到$n$。这些路口之间连接着$m$条双向道路,每条道路连接着两个不同的路口,且任意两个路口之间最多连接着一条道路。每条道路中央都设置着一个交通灯。 为了保障道路的安全,对于任意两条道路,如果它们连接了同一个路口,那么它们不能同色。 你的朋友正乘着飞机从杭州的上空飞过,并拍了一张杭州的照片。在照片里,每条道路的交通灯的颜色都清晰可辨。 你并不知道你的朋友是在什么时候按下的快门,于是你想统计出有多少种可能的方案。每个方案可以用一个颜色序列$col_1,col_2,\dots,col_m(col_i\in\{'Red','Green'\})$来描述,表示每个交通灯的颜色。 Input 第一行包含一个正整数$T(1\leq T\leq 5000)$,表示测试数据的组数。 每组数据第一行包含两个正整数$n,m(1\leq n,m\leq 100000)$,表示路口和道路的数量。 接下来$m$行,每行包含两个正整数$u_i,v_i(1\leq u_i,v_i\leq n,u_i\neq v_i)$,表示一条连接$u_i$路口和$v_i$路口的道路,任意两个路口之间最多连接着一条道路。 输入数据保证所有数据中$n$和$m$的总和都不超过$1000000$。 Output 对于每组数据输出一行一个整数,即$ans$,即可能的方案数对$1000000007=10^9+7$取模的结果。 注意城市布局可能不能保障道路的安全,此时的答案应该为$0$。 Sample Input
Sample Output
Author Claris Source | ||||||||||
|