Pagini recente » Cod sursa (job #80943) | Cod sursa (job #2354589) | Cod sursa (job #668798) | Cod sursa (job #778517) | Cod sursa (job #1622128)
#include <fstream>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
struct nod
{
int inf;
nod *urm;
};
nod *a[50006];
int v[50006],c[50006],nr,n,m;
void adauga(int i, int j)
{
nod *p=new nod;
p->inf=j;
// p->cost=c;
p->urm=a[i];
a[i]=p;
}
void citire()
{
int i,x,y;
f>>n>>m;
for(int i=1;i<=m;i++)
{
f>>x>>y;
//v[y]++;
adauga(x,y);
}
}
void ad(int k)
{
int i;
v[k]=1;
nod *q;
q=a[k];
while(q!=0)
{
if(v[q->inf]!=1)
ad(q->inf);
q=q->urm;
}
nr++;
c[nr]=k;
}
int main()
{
citire();
for(int i=1;i<=n;i++)
if(v[i]==0)
ad(i);
for(int i=nr;i>=1;i--)
g<<c[i]<<" ";
return 0;
}