随笔分类 - 算法
摘要:1. 点、线、凸边形 1 /******************************************************* 2 二维几何基础 3 【注意】数组下标从1开始。 4 *****************************************************
阅读全文
摘要:凸包算法 凸包类型的题算法主要有三种:JarvisMarch算法、Graham算法和Andrew算法,这三种算法时间性能上递增。 JarvisMarch算法 1 /****************************************************************** 2
阅读全文
摘要:LCM与GCD算法 LCM(最小公倍数)和GCD最大公因数在做ACM题时经常会用到,求两个整数的LCM和GCD有两种方法。 1. 辗转相除法(欧几里得算法) 定理:对于任意的两个整数a、b (a$\geq$b), 有(a,b) = (b, a%b) . ((a, b)表示a,b的最大公因数) 证明如
阅读全文
摘要:LCS,LIS,LICS算法 首先,要理解下子串子序列的含义: 1. 子串:来源于原序列连续的一段。 2. 子序列:来源于原序列中元素相对顺序不变的一段,不要求元素连续。 LCS(最长公共子序列) 给定两个序列A、B,设C[i, j]=LCS(Ai, Bj),其中Ai、Bj分别表示A从首元素到第i个
阅读全文
摘要:高精度算法 (C/C++) 做ACM题的时候,经常遇到大数的加减乘除,乘幂,阶乘的计算,这时给定的数据类型往往不够表示最后结果,这时就需要用到高精度算法。高精度算法的本质是把大数拆成若干固定长度的块,然后对每一块进行相应的运算。这里以考虑4位数字为一块为例,且输入的大数均为正整数(也可以考虑其他位,
阅读全文

浙公网安备 33010602011771号