#include<bits/stdc++.h>
using namespace std;
int n,m,h[100005],t[100005],ans[100005],e[100005],k;
void add(int x,int y)
{
e[k++]=y;
t[k]=h[x];
h[x]=k;
}
void dfs(int x,int w)
{
ans[x]=w;
for(int i=h[x];i;i=t[i])
{
int y=e[i];
if(ans[y]) continue;
dfs(y,w);
}
}
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int x,y;
cin>>x>>y;
add(y,x);
}
for(int i=n;i;i--)
if(!ans[i]) dfs(i,i);
for(int i=1;i<=n;i++)
cout<<ans[i]<<" ";
return 0;
}
样例没过
有没有daolao看看QWQ