提交时间:2022-07-31 23:23:37

运行 ID: 55937

#include<bits/stdc++.h> using namespace std; int main(){ int s[505]={0},book[505][505]={0},num[505]={0}; int k,l,n,m,a,b; while(cin>>n>>m&&n!=0&&m!=0){ l=0; memset(s,0,sizeof(s)); memset(book,0,sizeof(book)); memset(num,0,sizeof(num)); for(int i=0;i<m;i++){ cin>>a>>b; if(book[a][b]==0){ s[b]++; book[a][b]=1; } } for(int i=0;i<n;i++){ for(int j=1;j<=n;j++){ if(s[j]==0){ k=j;break; } } num[l++]=k; s[k]=-1; for(int h=1;h<=n;h++){ if(book[k][h]) s[h]--; } } cout<<num[0]; for(int i=1;i<n;i++){ cout<<' '<<num[i]; } cout<<endl; } return 0; }