hdu 并查集
xws117123
微博地址 http://weibo.com/2139773423/profile?rightmod=1&wvr=6&mod=personinfo
展开
-
hdu 1863
总是感觉最小生成树和并查集是混着用的 用的是prim算法 注意的点是因为初始化的缘故 所以第一次的for循环没有=号 而第二次的for循环求最小的值是是需要加上=号的 # include # include # define INF 999999 int m,n; int sum=0; int lowcost[1000]; int nearvex[1000]; int map原创 2013-06-13 22:26:22 · 451 阅读 · 0 评论 -
hdu 1272
这道题 抄的ice crazy的 我发现 一个好的对于变量的命名是十分重要的 规范化编程 还有就是 这道题有一个 continue的问题 当两个数啊,a,b的父节点一样是 肯定是错误的 但是你不能一下子就break 那样的话 后面的数据就没有办法 再接着输入了 会被误以为是下一个数据组 所以 小心 小心!!!!!!! # i原创 2013-06-16 20:15:06 · 511 阅读 · 0 评论 -
hdu 1213
并查集的水题 注意的是认真的读题 # include # include int p[1011]; int m,n; void build() { int i; for(i=1;i<=m;i++) p[i]=i; } int getfather(int i) { return (p[i]==i)?i:(p[i]=getfather(p[i])); } int main ()原创 2013-06-16 15:50:01 · 457 阅读 · 0 评论 -
hdu 1232
# include # include int node[1005]; int getfather(int a) { return (node[a]==a)?a:(node[a]=getfather(node[a])); } int main () { int m,n,i; int a,b,mark; while(scanf("%d",&m)!=EOF) { if(m==0)原创 2013-06-07 20:42:25 · 540 阅读 · 0 评论 -
hdu 1116
# include # include int parent[27]; int in[27],out[27]; void unit() { int i; for(i=1;i<27;i++) parent[i]=i; } int father(int x) { return parent[x]==x?x:(parent[x]=father(parent[x])); } void uni原创 2013-10-30 01:33:44 · 532 阅读 · 0 评论 -
1325 hdu
# include using namespace std; int main () { int n,m,k=0; int j=0,s[100005]={0},big,i; bool flag[100005]={0}; bool f=0; while(cin>>n>>m) { if(m==-1&&n==-1)原创 2013-12-22 20:05:26 · 569 阅读 · 0 评论 -
hdu 1558
# include # include using namespace std; int num[1010],pre[1010]; char s[5]; struct point { double x,y; }; struct Edge { point a,b; }E[1010]; int onseg(point a,point b,point c) { return c.x=min(原创 2013-12-23 10:50:26 · 571 阅读 · 0 评论