Pagini recente » Cod sursa (job #2067506) | Cod sursa (job #881638) | Cod sursa (job #496759) | Cod sursa (job #2627288) | Cod sursa (job #800647)
Cod sursa(job #800647)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream in("sortaret.in");
ofstream out("sortaret.out");
vector<int> a[51111];
int c[51111],nr[51111];
int main()
{
int n,m,i,p,q,st,dr=0;
in>>n>>m;
for(i=1;i<=m;++i)
{
in>>p>>q;
a[p].push_back(q);
nr[q]++;
}
for(i=1;i<=n;++i)
{
if(nr[i]==0)
{
c[++dr]=i;
}
}
st=1;
while(st<=dr)
{
for(i=0;i<a[c[st]].size();++i)
{
nr[a[c[st]][i]]--;
if(nr[a[c[st]][i]]==0)
c[++dr]=a[c[st]][i];
}
out<<c[st]<<" ";
++st;
}
out<<"\n";
return 0;
}