Pagini recente » Istoria paginii utilizator/palfi | Monitorul de evaluare | Istoria paginii utilizator/veronicamicle | Diferente pentru fmi-no-stress-7/solutii intre reviziile 32 si 28 | Cod sursa (job #653485)
Cod sursa(job #653485)
#define nmax 50000
#define mmax 100000
#include<fstream>
using namespace std;
ifstream f("sortaret.in",fstream::in);
ofstream g("sortaret.out",fstream::out);
struct nod
{
int inf;
nod *urm;
};
nod *l[nmax];
short int n,viz[nmax];
int sol[nmax],m,i;
void add(short int x,short int y)
{
nod *nou;
nou=new nod;
nou->inf=x;
nou->urm=l[y];
l[y]=nou;
}
void DF(short int x)
{
viz[x]=1;
nod *p;
for(p=l[x];p;p=p->urm)
if(!viz[p->inf])
DF(p->inf);
sol[++sol[0]]=x;
}
int main()
{
f>>n>>m;
short int x,y;
for(i=1;i<=m;i++)
{
f>>x>>y;
add(x,y);
}
for(i=1;i<=n;i++)
if(viz[i]==0)
DF(i);
for(i=1;i<=n;i++)
g<<sol[i]<<" ";
f.close();
g.close();
return 0;
}