Pagini recente » Cod sursa (job #2522929) | Cod sursa (job #426264) | Cod sursa (job #1854487) | Cod sursa (job #319042) | Cod sursa (job #2672647)
# numarul componentelor conexe
def dfs(nod):
v[nod] = 1
for vecin in a[nod]:
if v[vecin] == 0:
dfs(vecin)
with open("dfs.in") as fin:
aux = fin.readline().split()
n = int(aux[0])
m = int(aux[1])
a = []
v = [0] * (n + 1)
for i in range(0, n+1):
a.append([])
for i in range(m):
aux = fin.readline().split()
x = int(aux[0])
y = int(aux[1])
a[x].append(y)
a[y].append(x)
print ("a = ", a)
componente = 0
for i in range(1, n+1):
if v[i] == 0:
dfs(i)
componente += 1
with open("dfs.out", "w") as fout:
fout.write(str(componente))