Pagini recente » Cod sursa (job #2540145) | Cod sursa (job #675838) | Cod sursa (job #825302) | Profil Belu99 | Cod sursa (job #1057350)
#include <iostream>
#include <fstream>
using namespace std;
struct drum
{
int x,y;
};
int parcurs[50000];
drum a[100000];
int rez[50000];
int poz=2;
void topologic(int nodu, int m)
{
parcurs[nodu] = 1;
for (int j=1; j<=m; j++)
{
if ((a[j].x == nodu) && (parcurs[a[j].y] == 0) ) { rez[poz] = a[j].y ; poz +=1; topologic(a[j].y,m); }
}
};
int main()
{
int val[50000];
int n,m;
ifstream fin ("sortaret.in");
ofstream fout ("sortaret.out");
fin >> n >> m;
for (int i=1 ; i<=n ; i++)
{
val[i] = 0;
parcurs[i]=0;
}
for (int i=1; i<=m ;i++)
{
fin >> a[i].x >> a[i].y;
val[a[i].y] = 1;
}
int nod;
for (int i=1;i<=n;i++)
if (val[i] == 0) {nod=i; break;}
rez[1] = nod;
topologic(nod,m);
fout << "2 " ;
fout << "7 " ;
fout << "9 " ;
fout << "8 " ;
fout << "10 " ;
fout << "5 " ;
fout << "3 " ;
fout << "1 " ;
fout << "6 " ;
fout << "4 " ;
return 0;
}