Pagini recente » Cod sursa (job #427443) | Cod sursa (job #737653) | Cod sursa (job #3188642) | Cod sursa (job #1527709) | Cod sursa (job #468791)
Cod sursa(job #468791)
#include <fstream>
#include <vector>
#include <queue>
#include <bitset>
using namespace std;
ifstream in("sortaret.in");
ofstream out("sortaret.out");
vector<int>V[50001];
queue<int>Q;
bitset<50001>viz;
void DFS(int nod)
{
int i,n;
viz[nod]=1;
Q.push(nod);
for(i=0,n=V[nod].size();i<n;++i)
if(!viz[V[nod][i]])
DFS(V[nod][i]);
}
int main()
{
int N,M,x,y,n,i;
in>>N>>M;
while(M--)
{
in>>x>>y;
V[x].push_back(y);
}
//DFS
for(i=1;i<=N;i++)
if(!viz[i])
DFS(i);
while(!Q.empty())
{
out<<Q.front()<<' ';
Q.pop();
}
return 0;
}