#include<bits/stdc++.h>
using namespace std;
main()
{
long n,m;
while(cin>>n>>m)
{
long i,vis[105][105]={0},indegree[105]={0},a,b,u;
queue<long>q;
vector<long>vec;
if(n==0&&m==0)
break;
for(i=0;i<m;i++)
{
cin>>a>>b;
vis[a][b]=1;
indegree[b]++;
}
for(i=1;i<=n;i++)
{
if(indegree[i]==0)
{
q.push(i);
vec.push_back(i);
}
}
while(!q.empty())
{
u=q.front();
q.pop();
for(i=1;i<=n;i++)
{
if(vis[u][i]==0)
continue;
indegree[i]--;
if(indegree[i]==0)
{
q.push(i);
vec.push_back(i);
}
}
}
for(i=0;i<vec.size();i++)
{
if(i==0)
{
cout<<vec[i];
}
else
cout<<" "<<vec[i];
}
cout<<endl;
}
}
using namespace std;
main()
{
long n,m;
while(cin>>n>>m)
{
long i,vis[105][105]={0},indegree[105]={0},a,b,u;
queue<long>q;
vector<long>vec;
if(n==0&&m==0)
break;
for(i=0;i<m;i++)
{
cin>>a>>b;
vis[a][b]=1;
indegree[b]++;
}
for(i=1;i<=n;i++)
{
if(indegree[i]==0)
{
q.push(i);
vec.push_back(i);
}
}
while(!q.empty())
{
u=q.front();
q.pop();
for(i=1;i<=n;i++)
{
if(vis[u][i]==0)
continue;
indegree[i]--;
if(indegree[i]==0)
{
q.push(i);
vec.push_back(i);
}
}
}
for(i=0;i<vec.size();i++)
{
if(i==0)
{
cout<<vec[i];
}
else
cout<<" "<<vec[i];
}
cout<<endl;
}
}
কোন মন্তব্য নেই:
একটি মন্তব্য পোস্ট করুন