HDOJ 1232 畅通工程解题报告
2011-07-31 22:01
369 查看
//#include <fstream> #include <iostream> using namespace std; unsigned point[1001]; unsigned find(unsigned value) { while(value!=point[value]) value=point[value]; return value; } void merge(unsigned xvalue,unsigned yvalue) { unsigned x=find(xvalue); unsigned y=find(yvalue); if(x!=y) point[x]=y; } int main() { //ifstream cin("畅通工程.txt"); int pointNum,lineNum; while (cin>>pointNum) { if(pointNum==0) break; for(int i=0;i<=pointNum;i++) point[i]=i; cin>>lineNum; while (lineNum--) { unsigned start,end; cin>>start>>end; merge(start,end); } int count=-1; for(int j=1;j<=pointNum;j++) if(j==point[j]) count++; cout<<count<<endl; } return 0; }
总结与教训:
1、第一次使用并查集,查找、合并。好爽。
2、较为简单,一次AC。
相关文章推荐
- Hdu 1232 畅通工程 解题报告
- HDU1232 畅通工程 解题报告
- HDU 1232 畅通工程 解题报告
- hdu 1232 畅通工程 解题报告
- 杭电acm1232 hdu-acm-1232畅通工程解题报告
- 最小生成树——HDOJ 1863 畅通工程 解题报告
- 最小生成树——HDOJ 1233 还是畅通工程 解题报告
- HDOJ-1875-畅通工程再续 解题报告
- hdu 1232 畅通工程 解题报告
- HDoj-1232-畅通工程-并查集
- HDOJ 题目1232 畅通工程(并查集)
- HDU 畅通工程系列题目解题报告 (HDU1232+HDU1233+HDU1863+HDU1874+HDU1875+HDU1879)
- 【解题报告】HDU 1874 畅通工程续 -- Dijkstra算法详解 单源点最短路问题
- hdu 1863 畅通工程 解题报告
- HDOJ 1232 畅通工程 (并查集)
- HDOJ1232 畅通工程 【并查集】
- Hdu 1879 继续畅通工程 最小生成树 解题报告
- HDOJ-1232 畅通工程
- HDOJ 1232 畅通工程(并查集)
- HDOJ 1232 畅通工程 (并查集)