摘要:
区间和,树状数组,线段树,莫队算法 阅读全文
摘要:
6035 Problem A 水题 6034 Problem B 0<=N<2^15,数据量很小,可以先素数筛选,再枚举 6015 Problem C 暴力枚举,注意特判一些显而易见的结果提高效率,然后两个for既也不会超 6025 Problem D 排序后从大到小模拟一下就行 6029 Prob 阅读全文
摘要:
以二分算法枚举答案的方法非常高效,枚举所需的时间复杂度只需O(logN) 设x为答案,check(x)只有真假两种取值。 能够使用二分枚举算法的条件: 存在一个X,当x小于X时和x大于X时,check(x)真假值不一样。 二分枚举即能够找出真假之间的边界,这个就是所求在满足题意下的最值了。 如果x是 阅读全文
摘要:
KMP算法中也涉及到子串与前缀的重复,而扩展KMP算法求得就是字符串S的所有后缀与字符串T的最长公共前缀 可以知道,一个字符串所有的子串便是这个字符串所有后缀的所有前缀(或前缀的后缀 ),那么求的信息其实也是字符串S的所有子串与字符串T前缀的重复 每个后缀的最长公共前缀长度存在一个extend数组中 阅读全文
摘要:
可以看出从fail数组中得到最直观的信息是子串与原串前缀的重复 阅读全文
摘要:
一、矩阵相乘 设C,A,B三个矩阵,C = A * B 则C[i][j] = ∑A[i][k] * B[k][j] (k = 0,1,2,...n-1) 矩阵相乘就是这么算的,依次用前面矩阵的每一行,依次乘后面矩阵的每一列,i就是行,j就是列。所以矩阵相乘就不满足交换律。 实现 : 3个变量,3重f 阅读全文
摘要:
题目链接 : http://acm.hdu.edu.cn/showproblem.php?pid=6237 题解 : 对x进行暴力,还有x肯定是质数,肯定能被所有石子数总和sum整除,然而暴力的上界不好确定,不可能定到sum去,就定个最大值100000吧,注意到一种sum是质数的情况,这种的答案就是 阅读全文
摘要:
1)欧几里得 Gcd(a,b)=Gcd(b,a%b) 注解:递归,循环也行,a=Gcd(a,0) 2) 扩展欧几里得 有 Ax + By = D A,B,D已知,当且仅当gcd(A,B)|D(即D%gcd(A,B)=0)时,x,y有整数解 I.典型同余模问题 问题链接:http://poj.org/ 阅读全文