Pagini recente » Rating Bendea Daniel (DaniWarMaster) | Cod sursa (job #1932600) | Cod sursa (job #1693438) | Cod sursa (job #2775892) | Cod sursa (job #1430306)
#include <iostream>
#include <vector>
#include <stdio.h>
using namespace std;
vector <int> *s,tpl;
int *viz;
void dfs(int x) {
int i;
for (i=0;(unsigned)i<s[x].size();i++) {
if (!viz[s[x][i]]) {
viz[s[x][i]] = 1;
dfs(s[x][i]);
}
}
tpl.push_back(x);
}
int main()
{
int n,i,j,m,x;
FILE *f,*g;
f = fopen("sortaret.in","r");
g = fopen("sortaret.out","w");
fscanf(f,"%d %d",&n,&m);
s = new vector<int>[n+1];
viz = new int[n+1];
for (i=1;i<=n;i++) viz[i] = 0;
for (i=1;i<=m;i++) {
fscanf(f,"%d %d",&x,&j);
s[x].push_back(j);
}
fclose(f);
dfs(1);
for (i=tpl.size()-1;i>=0;i--) fprintf(g,"%d ",tpl[i]);
fclose(g);
return 0;
}