1176. Hyperchannels(欧拉回路)

1176

给定一有向图 求其反图的欧拉回路 

路径输反了 一直WA。。

 1 #include <iostream>

 2 #include<cstdio>

 3 #include<cstring>

 4 #include<algorithm>

 5 #include<stdlib.h>

 6 #include<queue>

 7 #include<vector>

 8 using namespace std;

 9 #define N 50100

10 int n,m;

11 vector<int>ed[1010];

12 int w[1010][1010],vis[1010];

13 int pa[N],num,t;

14 void dfs(int u)

15 {

16     int i;

17     for(i = 0 ; i < (int)ed[u].size() ; i++)

18     {

19         int v = ed[u][i];

20         if(w[u][v])

21         continue;

22         else

23         {

24             w[u][v] = 1;

25             dfs(v);

26         }

27     }

28     t++;

29     pa[t] = u;

30 }

31 int main()

32 {

33     int i,j;

34     scanf("%d%d",&n,&m);

35     for(i = 1; i <= n ; i++)

36         for(j = 1 ; j <= n ; j++)

37         scanf("%d",&w[i][j]);

38     for(i = 1; i <= n ; i++)

39         for(j = 1; j <= n ; j++)

40         if(i!=j&&!w[i][j])

41         {

42             ed[i].push_back(j);

43         }

44     dfs(m);

45     for(i = t; i > 1 ; i--)

46     printf("%d %d\n",pa[i],pa[i-1]);

47     return 0;

48 }
View Code

 

你可能感兴趣的:(channel)