Mai intai trebuie sa te autentifici.
Cod sursa(job #3148064)
Utilizator | Data | 29 august 2023 07:28:51 | |
---|---|---|---|
Problema | Parcurgere DFS - componente conexe | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 1.04 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
struct nod {
int val;
nod *nxt = NULL;
};
nod *gr[10001];
void afis(nod *l,int& nr) {
while (l != NULL) {
l->val;
nr++;
l = l->nxt;
}
}
void add_node(nod *&list_beg, int x) {
if (list_beg == NULL) {
list_beg = new nod;
list_beg->val = x;
} else {
nod *l = list_beg;
while (l->nxt != NULL) {
l = l->nxt;
}
nod *q = new nod;
q->val = x;
l->nxt = q;
}
}
void add_nod_rev(nod *&list_beg, int x) {
nod *new_nod = new nod;
new_nod->val = x;
new_nod->nxt = list_beg;
list_beg = new_nod;
}
int main (){
int n,nr,p=0;
fin >> n;
int m;
fin >> m;
for (int i = 0; i < m; i++) {
int a, b;
fin >> a >> b;
add_nod_rev(gr[a], b);
}
for (int i = 1; i <= n; i++) {
nr=0;
afis(gr[i],nr);
p=p+nr;
}
fout<<p;
}