UVa 10596 - Morning Walk
来源:互联网 发布:彩票源码论坛php 编辑:程序博客网 时间:2024/05/17 09:15
纯欧拉回路的题,连通性以及度数,注意 r==0 时特殊情况的处理(此时应该是Not Possible的) ~
代码如下:
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>int p[200+5];int find(int x){ return p[x] == x ? x : find(p[x]);}int main(){#ifdef state freopen("sample.txt","r",stdin);#endif int n,r,i; int a[10000+5][3],io[200+5]; while(scanf("%d%d",&n,&r)!=EOF) { if(r == 0) { printf("Not Possible\n"); continue; } int flag = 0; memset(a,0,sizeof(a)); memset(io,0,sizeof(io)); for(i = 0; i < n; i++) p[i] = i; for(i = 0; i < r ; i++) { scanf("%d%d",&a[i][0],&a[i][1]); int p_in = a[i][0] , p_out = a[i][1]; io[p_in]++; io[p_out]++; p_in=find(p_in); p_out=find(p_out); if(p_in != p_out) p[p_in] = p_out; } int ok = 1; for(i = 0 ; !io[i] ; i++); int t = find(i); for( i++; i <= n ; i++ ) if(io[i] && find(i) != t) { ok = 0; break; } if(ok) for( i = 0; i <= n; i++ ) if( io[i] % 2 ) { flag = 1; break; } if(flag || !ok) printf("Not Possible\n"); else printf("Possible\n"); } return 0;}
- uva 10596 - Morning Walk
- uva 10596 - Morning Walk
- uva 10596 - Morning Walk
- UVa 10596 - Morning Walk
- UVa 10596 - Morning Walk
- UVA 10596 Morning Walk
- uva 10596 - Morning Walk
- UVA 10596 Morning Walk
- uva 10596Morning Walk
- UVa 10596: Morning Walk
- uva 10596 - Morning Walk
- uva 10596 Morning Walk
- Morning Walk UVA 10596
- UVa 10596 - Morning Walk
- UVA 10596 - Morning Walk
- UVA - 10596 Morning Walk
- uva 10596 - Morning Walk
- UVA - 10596 Morning Walk
- 关于flush()和ob_flush()
- UVa 10054 - The Necklace
- weblogic 部署出现的错误汇总
- 在32位系统下使用MongoDB的一点心得
- 关于url传送参数的转码问题
- UVa 10596 - Morning Walk
- jquery实现clone
- iOS中的协议与委托
- UVa 10305 - Ordering Tasks
- 图片墙瀑布式加载图片方法
- php伪弹窗的实现
- SQLite Database Browser
- Javascript 创建对象及为对象属性赋值
- Linux防火墙设置