Pagini recente » Cod sursa (job #2664614) | Cod sursa (job #3128738) | Cod sursa (job #1625571) | Cod sursa (job #2100648) | Cod sursa (job #2855898)
#include<bits/stdc++.h>
#define nlim 50005
#define pb push_back
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int n,m,deg[nlim],Q[nlim];
vector<int>mat[nlim];
void solve()
{
for(int i=1;i<=n;i++)
{
if(deg[i]==0)
{
Q[++Q[0]]=i;
}
}
vector<int>::iterator it;
for(int i=1;i<=n;i++)
{
int nod=Q[i];
for(it=mat[nod].begin();it!=mat[nod].end();++it)
{
deg[*it]--;
if(deg[*it]==0)
Q[++Q[0]]=*it;
}
}
for(int i=1;i<=n;i++)
cout<<Q[i]<<" ";
}
void cetire()
{
f>>n>>m;
for(int i=1; i<=m; i++)
{
int a,b;
f>>a>>b;
mat[a].pb(b);
deg[b]++;
}
}
int main()
{
cetire();
solve();
}