![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
acerllc
这个作者很懒,什么都没留下…
展开
-
最长递增子序列 O(nlogn)
//Longest Increasing Subsequence #include #include #define N 1000000 using namespace std; int a[N], b[N]; int lis(int n) { int len; int l, r, mid; if(n == 0) return 0;原创 2013-04-17 13:22:56 · 732 阅读 · 0 评论 -
POJ 3233 Matrix Power Series
题意:给一个n阶矩阵A,求A+A^2+A^3+...+A^k的结果 这道题看似挺简单,但K的值很大10^9,肯定无法每个都进行处理,所以肯定存在某些重复的地方,从而减少计算量,这就是题目的第一个考察点。由于A+A^2+A^3+...+A^k = (A+A^2+A^3+...+A^(k/2)) * (E+A^(k/2)),其中E为单位矩阵(可以理解为我们整数运算时的1),k为偶数,这样就可以减去一原创 2013-05-10 16:05:54 · 549 阅读 · 0 评论 -
浅谈KMP算法
KMP算法主要用来处理字符串匹配的问题。简单说,就是给你两串字符串A,B,问你B是否为A的子串(子串知道啥意思吧)。例如,A=“12345”,B=“34”,显然B就是A的子串啦。对于这问题,我们可以用很暴力的方法解决,时间为O(nm)。其中n为串A的长度,m为串B的长度。(记住啦,下面会用到)。下面贴出O(nm)代码: for(i=1; i<=n; i++) { if(A[i] ==原创 2013-05-15 13:40:15 · 480 阅读 · 0 评论 -
hdu 2243 AC+矩阵快速幂
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2243 做这道题前,得先去做这道题:http://poj.org/problem?id=2778 题目大意:给定m个词根,现在要用26个字母组成长度小等于n的字符串并且至少含一个词根的组合种数,n 这道题跟POJ那道差不多,不过这道更恶心,结果要对2^64取模(巨坑啊,害我卡了那么久),原创 2013-07-16 00:13:47 · 537 阅读 · 0 评论