Pagini recente » Cod sursa (job #345) | Cod sursa (job #934501) | Cod sursa (job #345275) | Cod sursa (job #2656654) | Cod sursa (job #1142797)
#include<cstdio>
#include<vector>
using namespace std;
vector<int>l[50100];
int n,m,i,j,x,y,p,u,c[100100],v[100100];
int main()
{
freopen("sortaret.in","r",stdin);
freopen("sortaret.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1; i<=m; i++)
{
scanf("%d%d",&x,&y);
l[x].push_back(y);
v[y]++;
}
for(i=1; i<=n; i++)
{
if(v[i]==0)
{
c[++u]=i;
}
}
p=1;
while(p<=u)
{
x=c[p];
for(i=0; i<l[x].size(); i++)
{
v[l[x][i]]--;
if(v[l[x][i]]==0)
{
c[++u]=l[x][i];
}
}
p++;
}
for(i=1; i<=u; i++)
fprintf("%d ",c[i]);
return 0;
}