摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2029数论中的最大公约数和最小公倍数的考察。View Code 1 #include<iostream> 2 using namespace std; 3 4 int gcd(int x,int y); 5 6 int lcm(int x,int y) //最小公倍数 7 { 8 return x/gcd(y,x%y)*y; 9 }10 11 int gcd(int x,int y) //递归求最大公约数12 {13 // if(x<y) //... 阅读全文
posted @ 2012-08-15 16:43 卢森堡公园的鸽子 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 1、 概述并查集(Disjoint set或者Union-find set)是一种树型的数据结构,常用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。2、 基本操作并查集是一种非常简单的数据结构,它主要涉及两个基本操作,分别为:A. 合并两个不相交集合B. 判断两个元素是否属于同一个集合(1) 合并两个不相交集合(Union(x,y))合并操作很简单:先设置一个数组Father[x],表示x的“父亲”的编号。那么,合并两个不相交集合的方法就是,找到其中一个集合最父亲的父亲(也就是最久远的祖先),将另外一个集合的最久远的祖先的父亲指向它。上图为两个不相交集合,b图为合并后Fa 阅读全文
posted @ 2012-07-29 10:28 卢森堡公园的鸽子 阅读(123) 评论(0) 推荐(0) 编辑