Pagini recente » Cod sursa (job #1195109) | Cod sursa (job #697496) | Cod sursa (job #130440) | Cod sursa (job #1158485) | Cod sursa (job #871765)
Cod sursa(job #871765)
#include<stdio.h>
#include<vector>
using namespace std;
FILE*in=fopen("sortaret.in","r");
FILE*out=fopen("sortaret.out","w");
vector<int> v[50001];
bool viz[50001];
int noduri,muchii,grad[50001];
int main()
{
fscanf(in,"%d%d",&noduri,&muchii);
for(int i=1;i<muchii;++i)
{
int data1,data2;
fscanf(in,"%d%d",&data1,&data2);
v[data1].push_back(data2);
grad[data2]++;
}
int noduriAJ=noduri;
while(noduriAJ)
for(int i=1;i<=noduri;++i)
{
if(!grad[i] && !viz[i])
{
fprintf(out,"%d ",i);
viz[i]=true;
noduriAJ--;
for(int j=0;j<(int)v[i].size();++j)
grad[v[i][j]]--;
}
}
fclose(in);
fclose(out);
}