Pagini recente » Cod sursa (job #579223) | Cod sursa (job #1283182) | Cod sursa (job #2106513) | Cod sursa (job #2823350) | Cod sursa (job #1334255)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in ("sortaret.in");
ofstream out ("sortaret.out");
int m,n,k,i,j,t;
int V[1000][1000],D[50000],STK[50000];
int DFS(int k)
{
if(D[k]==0){
D[k]=1;
for (int i=1;i<=n;i++)
{
if(V[i][k]==0)
DFS(i);
}
STK[t--]=k;
}
}
int main()
{
in>>n;
in>>m;
t=n;
for(int i=1;i<=m;i++)
{
in>>k>>j;
V[k][j]=1;
}
cout<<" ";
for(int i=1;i<=n;i++)
cout<<i<<' ';
cout<<endl;
for (int i=1;i<=n;i++)
{ cout<<i<<' ';
for (int j=1;j<=n;j++)
{
cout<<V[i][j]<<' ';
}
cout<<endl;
}
for(int i=1;i<=n;i++)
DFS(i);
for(int i=1;i<=n;i++)
out<<STK[i]<<' ';
in.close();
out.close();
return 0;
}