数论
1
证明:设(n)的质因子有(k)个,那么由(mu)的定义,左式显然等于(sumlimits_{i=0}^k(-1)^kLargeinom{i}{k} ormalsize=(1+(-1))^k=0^k=[k=0]) ,也显然有([k=0]=[n=1]),证毕。
2
考虑把(x,y)质因子分解。设(large x=prod p_i^{alpha_i}, y=prod p_i^{eta_i}),则左式中(i,j)中相同的质因子只能分给其中的一个,故枚举每个质因子分给(i)还是(j)还是都不给,最终答案为(prod{alpha_i + eta_i + 1}=d(xy)),证毕。
3
(sumlimits_{dmid n}varphi(d)=n quad) (即(varphi * I = id))
(ecauseforall dmid n, varphi(Large frac nd
ormalsize)=sumlimits_{i=1}^n[(i,n)=d])
( hereforesumlimits_{dmid n}varphi(d)=sumlimits_{i=1}^nsumlimits_{dmid n}[(i,n)=d]=n)
4
上面的结论再两边狄利克雷卷积一下得到:
(varphi = id * mu)
即(varphi(n)=sumlimits_{dmid n}mu(dfrac nd)d)
5
对于质数(p),设(n=p-1, F(d)=sumlimits_{a=1}^n [delta_p(a)=d]),其中(delta_p(a)=min{k|kinBbb{N^+} wedge a^kequiv 1mod p}),则(forall dmid n, F(d)=varphi(d))
推论:(F(n)=varphi(n))即质数(p)恰有(varphi(n))个原根
证明:
-
(n)次多项式至多有(n)个根,在模意义下也是如此。(疑似因式定理,证明略)
-
由费马小定理得出,(x^n=1)恰有(n)个根(1,2,cdots,n)。任取(dmid n),则可将(x^n-1)分解出因式(x^d-1)。而分解结果的另一部分为(n-d)次式,由1知(n-d)次式至多有(n-d)个根,即(x^d=1)至少有(d)个根。再次结合1,可得(x^d=1)恰有(d)个根。
-
(F(d)le varphi(d))
当(F(d)=0)时,显然成立。否则取任意一个(a)满足(delta_p(a)=d),则(a^1sim a^d)互不相同,且都是(x^d=1)的根。由1知这就是(x^d=1)的(d)个根。此时再取一个数(k)满足(1le kle dspacewedge (d,k)>1),则容易发现(a^k)是(x^{d/(d,k)}=1)的根,故(delta_p(k)<d),舍,结论得证。
-
我们知道,(sumlimits_{dmid n}F(d)=n),(sumlimits_{dmid n}varphi(d)=n)。(很显然吧。。。)结合3,只能(forall dmid n, F(d)=varphi(d))。证毕。
数据结构
线段树
为什么将区间按照线段树的划分方式总区间数量是(mathcal O(log_2 n))的(询问的区间是 ([l,r]))?
考虑有什么样子特征的结点会被考虑到。容易发现,一个节点管辖的区间 ([L,R]) 在包含任意一个端点是,会被访问到。并且在 (R ot =r,L ot= l) 的时候,这个节点不会被计算贡献,会继续向下递归。这样的结点组成了线段树上的两条自上而下的链,并且最多这些节点的两个儿子都被访问到,所以复杂度是 (mathcal O(log_2n)) 的。
一类点(白色):在 (mathrm{modify}) 操作中,被半覆盖的点。
二类点(深灰):在 (mathrm{modify}) 操作中,被全覆盖的点,并且能被遍历到。
三类点(橙色):在 (mathrm{modify}) 操作中,未被覆盖的点,并且可以得到 (mathrm{pushdown}) 来的标记。
四类点(浅灰):在 (mathrm{modify}) 操作中,被全覆盖的点,并且不能被遍历到。
五类点(黄色):在 (mathrm{modify}) 操作中,未被覆盖的点,并且不可能得到 (mathrm{pushdown}) 来的标记。
图和文字摘自Sooke的一篇博客,我认为有助于大家理解上面那段话。
数学
柯西中值定理
对于实数(a<b),与在区间([a,b])内连续、区间((a,b))内可导的函数(f(x),F(x)),且(forall xin(a,b), F'(x) eq 0),(exist xiin(a,b))使得(frac{f(a)-f(b)}{F(a)-F(b)}=frac{f'(xi)}{F'(xi)})
证明:构造辅助函数(g(x)=f(x)-F(x)frac{f(a)-f(b)}{F(a)-F(b)}),则容易看出(g(a)=g(b)=frac{F(a)f(b)-F(b)f(a)}{F(a)-F(b)})
因此(existsxiin(a,b), g'(xi)=0)
即(existsxiin(a,b), f'(xi)-F'(xi)frac{f(a)-f(b)}{F(a)-F(b)}=0),又因为(F'(xi) eq 0),证毕。
拉格朗日余项(泰勒展开式误差)
对于函数(f(x)),它的(n)阶泰勒展开式为(p_n(x)=sum_{i=0}^n frac{f^{(i)}(x_0)(x-x_0)^i}{i!}),误差为(f(x)-p_n(x)=R_n(x))。
其中(R_n(x)=frac{f^{(n+1)}(xi)(x-x_0)^{n+1}}{(n+1)!},xi)是在(x)与(x_0)之间的某个数。
证明:
显然有(R_n(x_0)^{(i)}=0,iin[0,n])
根据柯西中值定理,(frac{R_n(x)}{(x-x_0)^{n+1}}=frac{R_n(x)-R_n(x_0)}{(x-x_0)^{n+1}-0^{n+1}}=frac {R_n'(xi_1)}{(n+1)(x-x_0)^n})
此时还能继续套定理,得到(frac {R_n'(xi_1)}{(n+1)(x-x_0)^n}=frac {R_n''(xi_2)}{(n+1)n(x-x_0)^{n-1}})
经过(n+1)次套娃,得到(frac{R_n(x)}{(x-x_0)^{n+1}}=frac {R_n^{(n+1)}(xi)}{(n+1)!}),其中(xi)在(x)与(x_0)之间。
(ecause p_n^{(n+1)}(x)=0\ herefore R_n^{(n+1)}(x)=f^{(n+1)}(x)-p_n^{(n+1)}(x)=f^{(n+1)}(x))
所以(R_n(x)=frac {f^{(n+1)}(xi)(x-x_0)^{n+1}}{(n+1)!})
组合
可以用SG函数的组合游戏
能转化为“两人交题在DAG上沿着有向边移动棋子,无法移动者判负”的组合游戏皆可用SG定理合并。