
算法杂谈
文章平均质量分 71
Array98
萌哒哒~~
展开
-
【算法杂谈】计算几何题目推荐
//第一期计算几何题的特点与做题要领:1.大部分不会很难,少部分题目思路很巧妙2.做计算几何题目,模板很重要,模板必须高度可靠。3.要注意代码的组织,因为计算几何的题目很容易上两百行代码,里面大部分是模板。如果代码一片混乱,那么会严重影响做题正确率。4.注意精度控制。5.能用整数的地方尽量用整数,要想到扩大数据的方法(扩大一倍,或扩大sqrt2)。因为整转载 2015-03-19 21:02:14 · 1278 阅读 · 0 评论 -
【算法杂谈】算法竞赛中数论相关
以下等式或者不等式均可以用数学归纳法予以证明!1 + 3 + 5 + ... + (2n - 1) = n^21*2 + 2*3 + 3*4 + ... + n*(n + 1) = n*(n + 1)*(n + 2) / 31*1! + 2*2! + 3*3! + ... + n*n! = (n + 1)! - 11^2 + 2^2 + 3^2 + ... + n^转载 2015-03-17 20:19:46 · 662 阅读 · 1 评论 -
【算法杂谈】算法艺术:Treap的“优美”写法
Treap有很多写法,今天研究了一下,觉得这种写法比较好(主要是代码比原来短多了): 如果是直接编的话,会比较烦,因为很多代码是对称的(对于旋转,插入,删除这些操作来说). 所以我们可以用0表示左,1表示右.那么son[0]是左儿子,son[1]是右儿子;Rotate(p,0)表示;左旋Rotate(p,1)表示右旋. 这样的话,很多对称的操作,都可以通过传递一个bool参数统一起来,就不用写转载 2015-03-17 20:11:04 · 965 阅读 · 0 评论 -
【算法杂谈】Dancing Link
Dancing Link是解决精确覆盖问题的最有效方法之一。精确覆盖问题:给定一个由0和1组成的矩阵,是否能找到一个行的集合,使得集合中每一列都恰好包含一个1? 例如,下面这个矩阵 就包含了这样一个集合(第1,4,5行)。我们把列想象成全集的一些元素,而行看作全集的一些子集;或者我们可以把行想象成全集的一些元素,而把列看作全集的一些子集;那么这个问题就是要求寻找一批元素,它们与每个子集恰好有一个原创 2015-04-07 20:18:09 · 1476 阅读 · 0 评论