#include<stdio.h> #include<stdlib.h> int a[101][101],d[101],m,n,p[101]; int dfs(int x){ int i,j,k; for(i=1;i<=n;i++) if(a[x][i] && !p[i]){ p[i]=1; if(!d[i] || dfs(d[i])){ d[i]=x; printf("[%d %d]----",x,i); system("pause"); return 1; } } return 0; } int main(){ int i,j,k; scanf("%d%d",&n,&m); int x,y; for(i=1;i<=m;i++){ scanf("%d%d",&x,&y); a[x][y]=1; } for(i=1;i<=n;i++){ for(j=1;j<=n;j++)p[j]=0; dfs(i); } for(i=1;i<=n;i++)printf("%d %d ",d[i],i); system("pause"); return 0; }