Pagini recente » Cod sursa (job #571169) | Cod sursa (job #917190) | Cod sursa (job #2418393) | Cod sursa (job #3188555) | Cod sursa (job #505908)
Cod sursa(job #505908)
#include<stdio.h>
#include<vector>
using namespace std;
#define nrd 50001
vector<int> V[nrd];
FILE *in=fopen("sortaret.in","r"),*out=fopen("sortaret.out","w");
bool viz[nrd];
int rez[nrd],k,n,m;
void dfs(int x)
{
int sz=V[x].size();
int i;
/*rez[++k]=V[x].at(i);
viz[V[x].at(i)]=true;*/
rez[++k]=x;
viz[x]=true;
for(i=0;i<sz;++i)
{
if(!viz[V[x].at(i)])
{
dfs(V[x].at(i));
}
}
}
int main()
{
int i,x,y;
fscanf(in,"%d %d",&n,&m);
for(i=1;i<=m;++i)
{
fscanf(in,"%d %d",&x,&y);
V[x].push_back(y);
}
for(i=1;i<=n;++i)
if(!viz[i])
dfs(i);
for(i=1;i<=n;i++)
fprintf(out,"%d ",rez[i]);
fprintf(out,"\n");
return 0;
}