BZOJ大视野 1083: [SCOI2005]繁忙的都市 解题报告
来源:互联网 发布:世界国家数据库省市区 编辑:程序博客网 时间:2024/06/09 19:46
最小生成树
双向建边,快排,二分答案,判断是否可行
code:
/ Forever_LF************************************************************** Problem: 1083 Language: C++ Result: Accepted Time:32 ms Memory:4400 kb****************************************************************/ #include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std; struct node{ int x,y,c,next;}a[200000]; int len,first[400];int n,m,ans,num,l,r,mid;int fa[400]; bool cmp( node x,node y ){return x.c<y.c;}int find_fa( int x ){ if( fa[x] == x )return x; fa[x] = find_fa( fa[x] ); return fa[x];}bool judgement( ){ int i; num = 0; for( i=1;i<=n;i++ ) fa[i] = i; for( i=1;i<=m;i++ ) if( a[i].c <= a[mid].c ) fa[ find_fa( a[i].x ) ] = fa[ find_fa( a[i].y ) ]; fa[1] = find_fa(1); for( i=2;i<=n;i++ ) if( fa[1] != find_fa( i ) ) return false; return true;}void ex( ){ l=1; r=m; while( l<=r ) { mid = (l+r)/2; if( judgement( ) ) r = mid-1; else l = mid+1; } ans = r+1; return ;}int main(){ memset( first,0,sizeof first ); int i,j,x,y,c; len = 0; scanf( "%d%d",&n,&m ); for( i=1;i<=m;i++ ) scanf("%d%d%d",&a[i].x,&a[i].y,&a[i].c); sort( a+1,a+1+m,cmp ); ex( ); printf( "%d %d\n",n-1,a[ans].c ); return 0;}
0 0
- BZOJ大视野 1083: [SCOI2005]繁忙的都市 解题报告
- BZOJ 1083 [SCOI2005]繁忙的都市 题解
- BZOJ 1083: [SCOI2005]繁忙的都市
- BZOJ 1083: [SCOI2005]繁忙的都市
- BZOJ 1083: [SCOI2005]繁忙的都市 kruskal
- BZOJ 1083[SCOI2005]繁忙的都市
- BZOJ 1083: [SCOI2005]繁忙的都市
- 1083: [SCOI2005]繁忙的都市
- 1083: [SCOI2005]繁忙的都市
- 1083: [SCOI2005]繁忙的都市
- bzoj 1083: [SCOI2005]繁忙的都市 最小生成树
- 【BZOJ】1083: [SCOI2005]繁忙的都市 二分+并查集
- BZOJ 1083 [SCOI2005]繁忙的都市 最小生成树
- bzoj 1083: [SCOI2005]繁忙的都市 (最小生成树)
- BZoj 1083: [SCOI2005]繁忙的都市( 最小生成树
- bzoj 1083: [SCOI2005]繁忙的都市 并查集
- BZOJ大视野 1088: [SCOI2005]扫雷Mine 解题报告
- 【SCOI2005】繁忙的都市
- 利用itext创建PDF表格
- Android中pendingIntent的深入理解
- vs2008编译nxogre全攻略
- MD5算法 C语言实现
- Know the Difference between Mitigation plan and Contingency Plan
- BZOJ大视野 1083: [SCOI2005]繁忙的都市 解题报告
- Android ScrollView向上滑动控件顶部悬浮效果实现
- NP 问题初识
- Tomcat架构(三)
- HDU 4267 A Simple Problem with Integers
- 神舟OSCAR数据库试用手记【1】
- Python 实现网络爬虫 抓取静态网页【代码】
- c之输入数组判断结束
- C语言日志系统库