217382026-01-13 18:43:10algoproTrükkpypy3Runtime error 0/60398ms64000 KiB
# UUID: 132fc99a-6035-42ee-8db1-70d06a17797a
import sys
def dfs(i,p):
    if pref[i]==p:
        b[0]=True
    elif pref[i]==0:
        pref[i]=-p
        for j in graf[i]:
            dfs(j,-p)

sys.setrecursionlimit(20001)
t=int(input())
for _ in range(t):
    n,k=map(int,input().split())
    l=[]
    b=[False]
    for __ in range(k):
        l.append(list(map(int,input().split())))
    graf=[[] for __ in range(n+1)]
    #print(l)
    for i in l:
        graf[i[0]].append(i[1])
        graf[i[1]].append(i[0])
    pref=[0]*(n+1)
    #print(graf)
    komp=0
    for i in range(1,n+1):
        if pref[i]==0:
            komp+=1
            if graf[i]!=[]:
                dfs(i,-1)
            else:
                pref[i]=1
    #print(pref)
    if b[0]:
        print(0)
    else:
        print((2**komp)%(10**9+7))
            
    

SubtaskSumTestVerdictTimeMemory
base0/60
1Accepted0/039ms19872 KiB
2Runtime error0/0319ms64000 KiB
3Wrong answer0/345ms19904 KiB
4Wrong answer0/345ms19904 KiB
5Wrong answer0/350ms21212 KiB
6Wrong answer0/346ms21240 KiB
7Runtime error0/2218ms64000 KiB
8Runtime error0/2190ms64000 KiB
9Runtime error0/2162ms64000 KiB
10Runtime error0/2202ms64000 KiB
11Runtime error0/2187ms64000 KiB
12Runtime error0/2266ms64000 KiB
13Runtime error0/2340ms64000 KiB
14Runtime error0/2268ms64000 KiB
15Runtime error0/2312ms64000 KiB
16Runtime error0/2282ms64000 KiB
17Runtime error0/2268ms64000 KiB
18Runtime error0/2246ms64000 KiB
19Runtime error0/2209ms64000 KiB
20Runtime error0/2188ms64000 KiB
21Runtime error0/2194ms64000 KiB
22Runtime error0/2300ms64000 KiB
23Runtime error0/2326ms64000 KiB
24Runtime error0/2187ms64000 KiB
25Runtime error0/2340ms64000 KiB
26Runtime error0/2275ms64000 KiB
27Runtime error0/2190ms64000 KiB
28Wrong answer0/2398ms60820 KiB
29Wrong answer0/2209ms43228 KiB
30Wrong answer0/2239ms42572 KiB