Cod sursa(job #2786009)

Utilizator Mirc100Mircea Octavian Mirc100 Data 20 octombrie 2021 00:15:13
Problema Parcurgere DFS - componente conexe Scor 60
Compilator py Status done
Runda Arhiva educationala Marime 0.64 kb
from collections import deque


def citire(nume_fisier):
    f = open(nume_fisier)
    n, m = [int(x) for x in f.readline().split()]
    l = [[] for i in range(n)]
    # for linie in f:
    for i in range(m):
        x, y = [int(a) for a in f.readline().split()]
        l[x - 1].append(y - 1)
        l[y - 1].append(x - 1);
    f.close()
    return n, l


def dfs(x):
    viz[x] = 1
    for y in l[x]:
        if viz[y] == 0:
            dfs(y)

n, l = citire("dfs.in")
viz = [0] * n
nrc = 0
for i in range(n):
    if viz[i]==0:
        dfs(i)
        nrc+=1

f = open("dfs.out", "w")
f.write(str(nrc)+"\n")
f.close()