Files
Algorithm/백준/Silver/24542. 튜터-튜티 관계의 수/튜터-튜티 관계의 수.py

30 lines
579 B
Python

import sys
sys.setrecursionlimit(10**7)
input = sys.stdin.readline
MOD = 10**9+7
N, M = map(int, input().split())
graph = [[] for _ in range(N+1)]
for _ in range(M):
u, v = map(int, input().split())
graph[u].append(v)
graph[v].append(u)
visited = [False] * (N+1)
def dfs(u):
visited[u] = True
cnt = 1
for v in graph[u]:
if not visited[v]:
cnt += dfs(v)
return cnt
answer = 1
for i in range(1, N+1):
if not visited[i]:
size = dfs(i)
answer = (answer * size) % MOD
print(answer)