213192026-01-12 18:25:57algoproTrükkpypy3Elfogadva 60/60233ms41704 KiB
# UUID: f3d6e7a0-a56c-4e42-980c-1b3d69e537f1
from sys import stdin

def modpow(a, n, M):
    e = 1
    while n:
        if n % 2:
            e *= a
            e %= M
        n //= 2
        a *= a
        a %= M
    return e


def megold():
    N, K = (int(x) for x in input().split())
    elek = {0: []}
    for _ in range(K):
        a, b = stdin.readline().split()
        a = int(a) - 1; b = int(b)
        elek.setdefault(a, []).append(b)
        elek.setdefault(b, []).append(a)
    jart = dict((cs, 0) for cs in elek.keys())
    k = 0
    for cs in elek.keys():
        if jart[cs]:
            continue
        k += 1
        sor = [cs]
        jart[cs] = 1
        while sor:
            cs2 = sor.pop()
            j2 = jart[cs2]
            for cs3 in elek[cs2]:
                j3 = jart[cs3]
                if j3 == 0:
                    jart[cs3] = -j2
                    sor.append(cs3)
                elif j3 == j2:
                    return 0
    k += N - len(elek)
    return modpow(2, k, 10**9 + 7)


T = int(input())
for i in range(T):
    print(megold())

RészfeladatÖsszpontTesztVerdiktIdőMemória
base60/60
1Elfogadva0/043ms19604 KiB
2Elfogadva0/0135ms30444 KiB
3Elfogadva3/343ms19868 KiB
4Elfogadva3/339ms19804 KiB
5Elfogadva3/346ms19944 KiB
6Elfogadva3/343ms19936 KiB
7Elfogadva2/2201ms39488 KiB
8Elfogadva2/2204ms39804 KiB
9Elfogadva2/2203ms38676 KiB
10Elfogadva2/2194ms40276 KiB
11Elfogadva2/2172ms39396 KiB
12Elfogadva2/2201ms40228 KiB
13Elfogadva2/2141ms26948 KiB
14Elfogadva2/2126ms27000 KiB
15Elfogadva2/2133ms26300 KiB
16Elfogadva2/2137ms27024 KiB
17Elfogadva2/2135ms27108 KiB
18Elfogadva2/2142ms26596 KiB
19Elfogadva2/2233ms40936 KiB
20Elfogadva2/2188ms41240 KiB
21Elfogadva2/2193ms41704 KiB
22Elfogadva2/2196ms37608 KiB
23Elfogadva2/2164ms36452 KiB
24Elfogadva2/2160ms36576 KiB
25Elfogadva2/2178ms36328 KiB
26Elfogadva2/2148ms27364 KiB
27Elfogadva2/2182ms40916 KiB
28Elfogadva2/2160ms38360 KiB
29Elfogadva2/2103ms23528 KiB
30Elfogadva2/2100ms24040 KiB