Pagini recente » Cod sursa (job #2172027) | Cod sursa (job #3221039) | Cod sursa (job #1553308) | Cod sursa (job #2635013) | Cod sursa (job #928930)
Cod sursa(job #928930)
#include<iostream>
#include<fstream>
#define MAX 100001
using namespace std;
struct nod{
int data;
nod *next;
};
int viz[MAX];
nod *graf[MAX];
ifstream citire("sortaret.in");
ofstream afisare("sortaret.out");
int dfs(int x){
nod *p;
int nr;
viz[x]=1;
afisare<<x<<" ";
cout<<x;
p=graf[x]->next;
while(p!=NULL){
if(viz[p->data]==0){
dfs(p->data);
}
p=p->next;
}
return 0;
}
int main(){
int noduri,muchii,i,y,x,nr=0;
citire>>noduri>>muchii;
nod *nou;
for(i = 1;i <= noduri; i++)
{
graf[i]=new nod;
graf[i]->next=NULL;
}
for(i = 1 ;i <= muchii ;i++){
citire>>x>>y;
nou=new nod;
nou->data=y;
nou->next=graf[x]->next;
graf[x]->next=nou;
}
for(i = 1; i <= noduri; i++)
// viz[i]=0;
for(i = 1; i <= noduri; i++)
if(viz[i]==0){
nr++;
dfs(i);
}
return 0;
}