Pagini recente » Cod sursa (job #426513) | Cod sursa (job #1248866) | Cod sursa (job #2043721) | Cod sursa (job #2085124) | Cod sursa (job #1363664)
#include <fstream>
#include <vector>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int n,m,x,y,i,j,p;
vector <int> v[50001];
int S[50001],c[50001],L[50001],K,Q[50001];
int main()
{f>>n>>m;
for(i=1;i<=m;i++){/*f>>x>>y;
A[x][0]=A[x][0]+1;
p=A[x][0];
A[x][p]=y;*/
v[x].push_back(y);
Q[x]++;
S[y]++;}
for(i=1;i<=n;i++) c[i]=1;
/* for(i=1;i<=n;i++)
{for(j=1;j<=n;j++)
g<<A[i][j]<<' ';
g<<'\n';}
*/
//for(i=1;i<=n;i++) g<<S[i]<<' ';
K=0;
while(K<n)
{for(i=1;i<=n;i++)
if(S[i]==0&&c[i]==1) {K++;L[K]=i;
for(int p=0;p<Q[i];p++)
S[v[i][p]]--;
c[i]=0;}
}
for(i=1;i<=n;i++) g<<L[i]<<' ';
return 0;
}