Pagini recente » Cod sursa (job #425073) | Cod sursa (job #1843114) | Cod sursa (job #2854027) | Profil Bina_George_Catalin_323CB | Cod sursa (job #2449072)
#!/usr/bin/env python3
import sys
sys.stdout = open('dfs.out', 'w')
with open('dfs.in', 'r') as fin:
readInts = lambda: tuple(map(int, fin.readline().split()))
N, M = readInts()
edges = [[] for _ in range(N + 1)]
visited = [False] * (N + 1)
for _ in range(M):
s, t = readInts()
edges[s].append(t)
def visit(x):
if visited[x]: return
visited[x] = True
for t in edges[x]:
visit(t)
numVisits = 0
for n in range(1, N + 1):
if not visited[n]:
visit(n)
numVisits += 1
print(numVisits)