无向图的欧拉路及欧拉回路1.1

2019-04-15 14:25发布

#include using namespace std; int n,m,pic[1100][1100],d[1100],road[1500],now; void dfs(int x) { for(int i=1; i<=500; i++) { if(pic[x][i]) { pic[x][i]--; pic[i][x]--; dfs(i); } } road[++now]=x; } int main() { cin>>m; for(int i=1; i<=m; i++) { int x,y; cin>>x>>y; pic[x][y]++; pic[y][x]++; d[x]++; d[y]++; } int st=1; for(int i=1; i<=500; i++) { if(d[i]%2) { st=i; break; } } dfs(st); for(int i=now; i>0; i--) { cout<