2024年3月18日 快速幂+补题+数论分块
快速幂
long long qpow(long long a,long long b){
long long res=1;
while(b){
if(b&1) res=res*a;
a=a*a;
b>>=1;
}
return res;
}
快速幂加速矩阵计算
应用于计算定长k路、斐波那契数列、求解递推式子
题目:
高精+快速幂
题目: NOIP2003 普及组] 麦森数
补题
题目:https://codeforces.com/contest/1944/problem/D
马拉车Manacher
+
结论:
如果字符串不是字符全相等(aaaaaaaaaa),那么它的任长偶数非回文子串必存在
如果字符串不是每间隔一个字符相等(ababababab),那么它的任长奇数非回文子串必存在
数论分块
- 求解例如$\sum_{i=1}^{n}f(\lfloor{n/i}\rfloor)$问题将时间复杂度$O(n)$=>$O(\sqrt{n})$
- 核心就是出现多个相同的$\lfloor{n/i}\rfloor$,考虑合并,那么就需要考虑每个相同的取值的左右端点
- $⌊n/l⌋=⌊n/r⌋$,直到$l$,得$r=n/(n/l)$,答案计算就是$ans += (n/l)*(r-l+1)$
- 题目:UVa11526 H(n) CQOI2007] 余数求和 )*