常用小知识点备忘
简介、这些大多都是不怎么会去证明的一些小结论或者小知识点
一、切比雪夫距离转曼哈顿距离
证明方向:旋转坐标轴
作用:曼哈顿距离的统计可以用前缀和优化
在二维空间里,\((x,y)\)的切比雪夫距离等价与\(((x+y)/2,(x-y)/2)\)的曼哈顿距离
二、范德蒙恒等式
\(\sum_{i=0}^k C_a^i \times C_b^{k-i}=C_{a+b}^k\)
三、dilworth定理
一般它的作用等于最少下降子序列的个数就等于其最长不下降子序列的长度
四、线性同余方程的通解问题
\(a \times x \equiv \ b \ (mod \ m)\)
有解情况当且仅当\(gcd(a,m)|b\)
通解是在模\(m/gcd(a,b)\)下的
五、exCRT与CRT合并与扩展lucas
其实这三个东西并不一样。。(可能修改...也行不太准确,欢迎指正)
exCRT是值同余方程组模数并不两两互质的情况的求解
CRT合并是一个数模另一个数的解,等价于这个数模另一个数分解质因数的每一个数后的做为同余方程组的常数项后求出的同余方程组的解
扩展lucas并没有用到lucas定理,只是用组合数的定义式,它用循环节递归处理阶乘,用CRT合并每一个的解
六、一些不能用的变量名函数名(我错一个更新一个)
变量名:y1,next...
函数名:
1.在使用了cmath以后不可以手写abs
2.new...
七、在整数域上进行三分如何避免边界问题
这样\(lmid=(l*2+r)/3,rmid=(l+r*2+2)/3\)
然后\(l=lmid+1\)或\(r=rmid-1\)
至于为什么,不是很懂
八、扩展欧拉定理
$$ a^b=
\begin{cases}
a^{b \ mod \ \varphi(p)},(a,p)=1 \
a^b,(a,p)\not=1,b<\varphi(p) \
a^{b \ mod \ \varphi(p)+\varphi(p)},(a,p)\not=1,b \ge \varphi(p)
\end{cases}
\ \ mod \ p
\[
或者这样写
### $a^t \equiv a^{min(t,t \ mod \ \varphi(p) + \varphi(p))} \ (mod \ p)$
第三行的证明思路和CRT合并有点像,先证素数,再证素数的几次方,再证合并后的合数
## 九、$F_{(a,b)}=(F_a,F_b)$
引理1:$F_{(a,b)}=(F_a,F_b)$
在证明引理1之前,我们得先证明引理2和引理3
引理2:$F_{m+n}=F_m*F_{n+1}+F_{m-1}*F_n=F_{m+1}*F_n+F_m*F_{n-1}$
证明:
设正整数$a>b$
$F_a$
$=F_{a-1}+F_{a-2}$
$=2*F_{a-2}+F_3$
$=3*F_{a-3}+2*F_{a-4}$
$=F_4*F_{a-3}+F_3*F_{a-4}$
$=...$
$=F_b*F_{a-b+1}+F_{b-1}*F_{a-b}$
引理3:$(F_n,F_{n+1})=1$
证明:
$(F_{n+1},F_n)$
$=(F_{n+1}-f_n,F_n)$
$=(F_{n-1},F_n)$
$=...$
$=(F_4,F_3)$
$=1$
证明引理1:
对于$F_{(a,b)}=(F_a,F_b)$
右边
$=(F_b*F_{a-b+1}+F_{b-1}*F_{a-b},F_b)$
$=(F_{b-1}*F_{a-b},F_b)$
$=(F_{a-b},F_b)$
即相当于坐标版的gcd了
最后等于$(F_{(a-b)},F_0)$
## 十、$(x^a-1,x^b-1)=x^{a,b}-1$
证明:
$(x^a-1,x^b-1)$
$=(x^a-x^b,x^b-1)$
$=(x^b \times (x^{a-b}-1),x^b-1)$
因为$(x^b,x^b-1)=1$
所以原式
$=(x^{a-b}-1,x^b-1)$
然后这是更相减损的形式
## 十一、求$c^{c^{{c..}^a}}\bmod p$
上面递归的规模是$\log_2p$层
证明用一下扩展欧拉定理就行了
等价于$p,\varphi(p),\varphi(\varphi(p))...$有多少层。
对于$p$是偶数,至少减少一半
对于$p$是奇数,下一次一定是偶数
长期更新...\]