首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

9度OnlineJudge之1027:欧拉回路

2013-09-24 
九度OnlineJudge之1027:欧拉回路题目描述: #include iostream#define MAX 1001using namespace stdint

九度OnlineJudge之1027:欧拉回路
题目描述: #include <iostream>#define MAX 1001using namespace std;int Tree[MAX];int Degree[MAX];int findRoot(int x){ if(Tree[x]==-1) return x; else { int tmp = findRoot(Tree[x]); Tree[x] = tmp; return tmp; } }int main(){ int N; int M; while(cin>>N,N!=0) { cin>>M; for(int i=1;i<=N;++i) { Tree[i]=-1; Degree[i]=0; } int a,b; while(M--) { cin>>a>>b; ++Degree[a]; ++Degree[b]; int x = findRoot(a); int y = findRoot(b); if(x!=y) { Tree[x] = y; } } int ans = 0; int flag = 1; for(int i=0;i<=N;++i) { if(Tree[i]==-1) ans++; if(Degree[i]%2==1) flag=0; } if(ans!=1) flag=0; cout<<flag<<endl; } // system("PAUSE"); return 0;}

热点排行