[OI] 数学与推论证明 1

Contest

\(1\). 数论定义
\(2\). 整除
\(3\). 最大公约数与最小公倍数
\(4\). 素数
\(5\). 同余
\(6\). 排列与组合
\(7\). 斐波那契数列
\(8\). 导数与积分
\(9\). 莫比乌斯函数与莫比乌斯反演
\(10\). 容斥原理拓展
\(\aleph\). 杂项

前情提要

信息学数论也是数学内容,涉及繁杂的数学推理与证明过程,以下为了简明文章内容,说明如下.

  1. "证明过程如下" 替换为 "\(P.(id)\)".

  2. "实现代码如下" 替换为 "\(Program\)",并将代码折叠.

  3. 上文提到的函数,定理等直接列出,必要处指出定义章节.

  4. 博客排布不等于撰写顺序,需要时会添加.

1.数论定义

1.1 积性函数与数论加性函数

1.1.1 概述

若函数 \(f(x)\) 满足 \(f(1)=1\),且对于任意互质的自然数 \(x,y\),都有 \(f(xy)=f(x)f(y)\),则 \(f(x)\) 为积性函数.

若函数 \(f(x)\) 满足 \(f(1)=1\),且对于任意自然数 \(x,y\),都有 \(f(xy)=f(x)f(y)\),则 \(f(x)\) 为完全积性函数.

若函数 \(f(x)\) 对于任意互质的整数 \(x,y\),都有 \(f(xy)=f(x)+f(y)\),则 \(f(x)\) 为数论加性函数.

1.1.2 积性函数的性质

\(No.1121\)\(f(x),g(x)\) 为积性函数,则以下函数为积性函数:

\[f(x^{p}) \]

\[f^{p}(x) \]

\[f(x)g(x) \]

2.整除

2.1 概述

若存在整数 \(c\),使 \(a=bc\),则有 \(b\) 整除 \(a\),记作 \(b\mid a\),否则 \(b \nmid a\).

\(No.211\)\(a\mid b,b\mid c\) ,则 \(a\mid c\).

\(No.212\)\(b\mid a,b\mid c\),则 \(b\mid (a \pm c)\).

\(No.213\)\(b\mid a\),则有 \(a=0\)\(|a|=|b|\).

\(No.214(fromNo.213)\)\(\mid b,b\mid a\),则 \(a=b\).

此外,对于一些特殊的数,满足:

\(No.215\)\(k\in N_{+}\),则 \(p^{k}-q^{k}=(p-q)(p^{n-1}+p^{n-2}q+...+pq^{n-2}+q^{n-1})\),即 \((p-q)\mid (p^{k}-q^{k})\).

\(No.216(fromNo.215)\)\(k\in N_{+}\),则 \((p-1)\mid (p^{k}-1)\).

\(No.217\)\(k\) 为正奇数,则 \((x+y)\mid (x^{k}+y^{k})\).

2.2 整除推论

\(No.221\) \(S(n)\) 表示 \(n\) 的各个数位数字之和,则 \(9\mid n\) 的充分必要条件为 \(9\mid S(n)\).

\[P.221 \]

\(n=a_{k}\times 10^{k}+...+a_{1}\times 10+a_{0}\),则 \(S(n)=a_{k}+...+a_{0}\). 那么 \(n-S(n)=a_{k}(10^{k}-1)+...+a_{1}(10-1)\),该式每一项均是 \(9\) 的倍数,得证.

3.最大公约数与最小公倍数

3.1 最大公约数概述

定义 \((x,y)\)\(x,y\) 的最大公约数. \((x,y)\)定义为 满足 \(x \mid k\)\(y \mid k\)\(k\) 的最大值.

\(No.311\) \((x,y)=(-x,y)=(x,-y)\)

\(No.312\) \((x,y)=(y,x)\)

\(No.313\) \((x,y)=(x,y+ax)\ (a\in Z)\)

\[P.313 \]

\((a,b)=k\),有 \(k\mid ax+b\ (x\in Z)\),则 \(k\)\((a,b+ax)\) 的一个公约数.

假设 \((a,b+ax)>k\),即 \((a,b+ax)=k+m\ (m>0)\),有 \(k+m\mid a,k+m\mid b+ax,k+m\mid ax\),则 \(k+m\mid b\),有 \((a,b)=k+m\),假设不成立. 故 \((a,b)=(a,b+ax)\).

\(No.314\)\((a,b)=c,d\mid a,d\mid b\),则 \((\frac{a}{d},\frac{b}{d})=\frac{c}{d}\).

\[P.314 \]

\(d\mid a,d\mid b\),说明 \(a,b\) 有公因子 \(d\),由最大公约数定义,\(d\mid c\),将该因子除去,\(c\) 也相应减少一个因子 \(d\).

3.2 裴蜀定理

\(No.321\)\(a,b\) 不全为 \(0\),则对任意整数 \(x,y\),有 \((a,b)\mid ax+by\).

\(No.322\)\(a,b\) 不全为 \(0\),则存在整数 \(x,y\),使 \(ax+by=(a,b)\).

\[P.322 \]

不妨设 \(d\le b,\ (a,b)=d\).

可得 \(d\mid ax+by\).

\(s\)\(ax+by\) 的最小正值,令 \(a=sq+r\),有 \(r=a\ mod\ s=a-q(ax+by)=a(1-qx)+b(-qy)\).

\(r=a\ mod\ s\),得 \(0\le r < s\),但因 \(s\)\(ax+by\) 的最小正值,不可能存在满足 \(ax+by\) 的更小的正数,而 \(r=a(1-qx)+b(-qy)\) 恰好为 \(ax+by\) 的形式,因此只能令 \(r=0\). 所以 \(s\)\(a,b\) 的一个公约数. 可以得到 \(d\mid s\).

我们知道,两个数的公约数一定不大于它们的最大公约数,而 \(d\mid s\) 又要求 \(d\le s\). 因此只能令 \(d=s\). 得证.

\(No.323 (from No.322)\)\(a,b\) 不全为 \(0\),且有正数 \(d\) 满足 \(a\mid d\)\(b\mid d\). 若存在整数 \(x,y\) 满足 \(ax+by=d\),则 \(d=(a,b)\).

\(No.324(fromNo.322)\)\(a,b\) 不全为 \(0\),则存在整数 \(x,y,d\),使 \(ax+by=d\) 有解的充要条件为 \((a,b)\mid d\).

3.3 欧几里得算法 (辗转相除法)

欧几里得算法主要用于求 \((a,b)\) 的值,所用的原理可以表示如下:

\(No.331\) \((x,y)=(y,x\ mod\ y)\ (x>y)\).

\[P.331 \]

不妨设 \(x>y\).

\(x\) 拆成两部分: 一部分为 \(y\) 的整倍数,另一部分为余下部分,可以得出,余下部分最小为 \(x\ mod\ y\).

那么令 \(x=ky+x\ mod\ y\ (k\in Z)\),定义正整数 \(d\) 满足 \(d\mid x\)\(d\mid y\).

移项,\(x\ mod\ y=x-ky\),则有 \(\frac{x\ mod\ y}{d}=\frac{x}{d}-\frac{ky}{d}\). 由前方证得等式左方两项均为整数,则等式右方也为整数,那么 \(d\mid x\ mod\ y\).

可得 \((y,x\ mod\ y)=d\),得证.

$Program$
int gcd(int a,int b){
	if(b == 0) return a;
	return gcd(b,a%b);
}

3.4 更相减损术

更相减损术是一种用加减法代替乘除法求最大公约数的过程,利用原理为 \(No.313\). 同时,这种方法还有一种优化策略:

\(No.341(fromNo.314)\)\(2\mid a,2\mid b\),则 \((a,b)=\frac{1}{2}(\frac{a}{2},\frac{b}{2})\).

\(No.342\)\(2\mid a,2\nmid b\),则 \((a,b)=(\frac{a}{2},b)\).

\[P.342 \]

\(2\nmid b\) 说明两者无公因子 \(2\),说明将该因子除去不影响结果.

3.5 扩展欧几里得算法

扩展欧几里得算法可以求出裴蜀方程 \(ax+by=(a,b)\) 的一组解.

证明没看懂,先咕了
$Program$
int exgcd(int a,int b,int &x,int &y){
    if(b ==0){
        x=1;
        y=0;
        return a;
    }
    int ret=exgcd(b,a%b,x,y);
    int t=x;
    x=y;
    y=t-a/b*y;
    return ret;
}

3.6 求裴蜀等式最小正解

一般来说,我们求裴蜀等式都会解出一个解集组,这时候让我们对于其中一个解取一组特殊值. 因此我们需要根据一组求出来的一般解解出特殊解. 通常情况下我们采用如下等式.

\(No.361\) \(ax+by=a\ (x-bk)+b\ (y+ak)\)

下面我们来讨论解出最小正解的方式.

注意到我们只需要求出最大的 \(k\) 值即可,令 \(x-bk>0\),有 \(bk<x\),得出 \(k_{max}=floor(\frac{x}{b})\),那么 \(x_{ans}=x-bk\) 即可.

事实上,该式也可写作 \(x_{ans}=(x\ mod\ p+p)\ mod\ p\).

3.7 扩展欧几里得算法解一般裴蜀等式

一般裴蜀等式是指 \(ax+by=c\ (a,b,c,x,y\in Z)\) 这样的式子. 对于这样的式子,我们有:

\(No.371\) 满足 \(ax+by=c\) 有解的充要条件为 \((a,b)\mid c\).

因此,对于 \(ax+by=c\),我们可以将其化为 \(\frac{a\ (a,b)}{c}x+\frac{b\ (a,b)}{c}y=(a,b)\),这样,我们可以用扩展欧几里得解出一组 \(\frac{a\ (a,b)}{c}x\)\(\frac{b\ (a,b)}{c}y\).

4.素数

4.1 概述

素数是除了 \(1\) 与它本身外无其他正因子的整数.

\((a,b)=1\) 的两个整数称互素.

\(No.411\) 大于 \(1\) 的整数必有素约数.

\(No.412\)\(p\) 是素数,则对于任意整数 \(n\),要么 \(p\mid n\),要么 \(p,n\) 互素.

4.2 算术基本定理

4.3 质因数分解

\(No.431\) 一个数 \(n\) 的因数 \(m\) 一定是由它的质因数组成的

\[P.431 \]

假设该结论不成立,则说明存在 \(p\),使得 \(p\nmid n\)\(p\mid m\). 不妨设 \(m=kp\ (k\in Z)\),则有 \(kp\nmid n\),即 \(m\nmid n\),与假设矛盾,故结论成立

\(No.432 (from No.431)\) 给一个数 \(n\) 乘一个它的因数,不会改变 \(n\) 的质因数个数.

4.4 欧拉函数

4.4.1 概述

欧拉函数用于计算小于等于 \(n\) 的数中与 \(n\) 互质的数的个数. 它的计算公式如下:

\[\varphi(n)=n\times \prod^{i}_{1\le i\le k}(1-\frac{1}{p_{i}}) \]

其中 \(p_{i}\)\(n\) 不重复的质因子.

4.4.2 欧拉函数的性质

\(No.4421\) \(\varphi(1)=1\)

\(No.4422\)\(p\) 为素数,则 \(\varphi(p)=p-1\).

\(No.4423\)\(p\) 为素数,则 \(\varphi(p^{k})=(p-1)\ p^{k-1}\).

\[P.4423 \]

假设 \(p \mid l\),不妨设 \(l=mp\ (m\in Z)\). 由欧拉定理中 \(l\le n\),可知 \(mp\le p^{k}\),即 \(m\le p^{k-1}\),这些数都能被 \(p\) 整除,因此不与 \(p^{k}\) 互质. 由 \(No.412\),与 \(p^{k}\) 互质的数就有 \(p^{k}-p^{k-1}=(p-1)\ p^{k-1}\) 个.

\(No.4424\) \(\varphi(x)\) 为积性函数.

\(No.4425\) 区间 \([1,n]\) 中全部与 \(m\) 互质的数的个数为 \(\frac{n}{m} \varphi(m)\).

4.4.3 关于欧拉函数的推论

\(No.4431\)\(p\mid n\),则 \(\varphi(n\times p)=p\times \varphi(n)\).

\[P.4431 \]

因为 \(p \mid n\), 不妨设 \(n=kp\ (k\in Z)\),则 \(n\times p=kp^{2}\).

根据欧拉函数的定义,有 \(\varphi(kp)=kp\times \prod^{i}_{1\le i\le l}(1-\frac{1}{p_{i}})\),且 \(\varphi(kp^{2})=kp^{2}\times \prod^{j}_{1\le j\le t}(1-\frac{1}{p_{j}})\).

因为 \(kp\) 已有质因数 \(p\),根据 给一个数 \(n\) 乘一个它的因数,不会改变 \(n\) 的质因数值 (\(No.432\)). 可得 \(\varphi(kp)\)\(\varphi(kp^{2})\) 的后项是相等的. 那么就有 \(\varphi(n\times p)=p\times \varphi(n)\).

4.4.4 欧拉筛

关于单独计算单值的欧拉函数,我们可以直接根据定义得到. 从小到大判断原数能否被当前数整除,若可以则将原数中全部相同质因子都去掉.

需要注意的是,与 \(n\) 互质的数中,比 \(\sqrt{n}\) 大的至多只有一个. 因此我们可以只分解出小于 \(\sqrt{n}\) 的质因数,假如最后剩下的数字比一要大,那么剩下的数字即为那个互质的数.

$Program$
int phi(int n){
  	int ans=n;
  	for(int i=2;i<=sqrt(n+0.5);i++){
	    if(n%i==0){
		    ans=ans/i*(i-1);
		    while(n%i==0){
			  	n/=i;
			}
	    }
  	}
  	if(n>1){
	  	ans=ans/n*(n-1);
	}
  	return ans;
}

欧拉筛可以帮我们提前计算出区间内的全部欧拉函数.

我们使用线性筛做基础来进行.

$Program$

代码中的解释:

  1. 第二行根据 \(No.4421\)
  2. 循环前四行为判断素数,\(b\) 数组标记合数,\(prime\) 数组按顺序记录全部的素数,\(p\) 数组为欧拉函数.
  3. 循环第三行利用 \(No.4422\)
  4. 后面进行线性筛核心语句
  5. 循环第七行: 若一个合数 \(n\) 能被一个质数 \(p\) 整除,那么 \(n\times p\) 中一定包含了能与 \(n\) 互质的全部整数.
  6. 循环最后 : 利用 \(No.4424\)
void euler(int n){
	p[1]=1;
    for(int i=2;i<=n;++i){
    	if(!b[i]){
        	prime[++num]=i;
            p[i]=i-1;
        }
    	for(int j=1;j<=num&&prime[j]*i<=n;++j){
    		b[i*prime[j]]=true;
        	if(i%prime[j]==0){
        		p[i*prime[j]]=p[i]*prime[j];
           	 	break;
        	}
        	else{
        		p[i*prime[j]]=p[i]*p[prime[j]];
        	}
    	} 
    } 
}

当然,除了线性筛,我们还有一种 \(O(n\ logn)\) 的类埃氏筛做法.

$Program$
for(int i=1;i<=n;++i){
	p[i]=i;
}
for(int i=2;i<=n;++i){
	if(p[i]==i){
		for(int j=i;j<=n;j+=i){
			p[j]=p[j]*(i-1)/i;
		}
	}
}

4.5 约数个数函数

定义 \(d(x)\) 表示 \(x\) 的不同正因子个数,形式化地 ,\(d(x)=\sum\limits^{x}_{i}[i\mid x]\)

对于一个大于 \(1\) 的正整数 \(n\) 分解质因数,令 \(n=\prod^{k}_{i=1}p_{i}^{a_{i}}\),则有:

\[d(n)=\prod^{k}_{i=1}(a_{i}+1) \]

\[P.4.5 \]

由约数的定义可知 \(p_{i}^{a_{i}}\) 的约数有且仅有 \(p_{i}^{a_{j}}\),其中 \(j\in[0,i]\),即一共有 \((a_{i}+1)\) 个.

由乘法原理得证.

5.同余

5.1 概述

若正整数 \(n,a,b\) 满足 \(n\mid (a+b)\),则称 \(a\equiv b \pmod c\). 否则称 \(a\not \equiv b \pmod c\).

\(No.511\) \(a\equiv b \pmod c\) 的充要条件为 \(a\ mod\ c=b\ mod\ c\).

\(No.512\) \(a\equiv a \pmod n\).

\(No.513\)\(a\equiv b \pmod n,b\equiv c \pmod n\),则 \(a\equiv c \pmod n\).

\(No.514\)\(a\equiv b \pmod n,c\equiv d \pmod n\),则 \((a\pm c)\equiv (b\pm d) \pmod n\).

\(No.515\)\(a\equiv b \pmod n,c\equiv d \pmod n\),则 \((ac)\equiv (bd) \pmod n\).

对于单纯的取模操作,我们也有:

\(No.516\) \(c\ (a+b)\ mod\ p=c\ (a\ mod\ p+b\ mod\ p)\ mod\ p\).

5.2 费马小定理

\(No.521\)\(p\) 为素数,\(a,p\) 互素. 则 \(a^{p-1} \equiv 1\pmod p\).

\(No.522(fromNo.521)\)\(p\) 为素数,\(a,p\) 互素. 则 \(a^{p} \equiv a\pmod p\).

5.3 线性同余方程

线性同余方程是形为 \(ax\equiv b \pmod n\) 这样的一元一次方程,为了解出这样的方程,需要掌握如下技巧.

5.3.1 乘法逆元

\(ax\equiv 1 \pmod b\),则称 \(x\)\(a\) 在模 \(b\) 意义下的乘法逆元,记作 \(a^{-1}\).

因为除法取模不满足类分配律,因此出现了乘法逆元来进行 \(\frac{a}{b}\ mod\ p\) 的快速计算.

乘法逆元的定义推导

\(\frac{a}{b}\ mod\ p=m\),给等式两边同乘 \(b\),有 \(a\ mod\ p=mb\ mod\ p\) . 若存在 \(ax\ mod\ p=m\).

不妨设 \(a,b < p\),则有 \(a=mb\ mod\ p\). 等式两边同乘 \(x\),有 \(ax\ mod\ p=m\ mod\ p=xmb\ mod\ p\).

联立上述式子,那么 \(m=xmb\ mod\ p\),解得 \(bx\ mod\ p=1\).

一个逆元方程并不一定有解,\(a,b\) 存在倍数关系时无逆元,反之,\(a,b\) 互质时存在逆元.

下面我们介绍求逆元的方法,因此以下默认 \(a,b\) 不存在倍数关系.

费马小定理可以求出当模数 \(b\) 为素数时的逆元.

正确性证明

根据费马小定理,有 \(a^{p-1}\ mod\ p=a\times a^{p-2}\ mod\ p=1\),为逆元方程. 因此 \(a\) 在模 \(p\) 意义下的逆元为 \(a^{p-2}\ mod\ p\).

$Program$
int quickpow(int a,int n,int p){
    int ans=1;
    while(n){
        if(n&1) ans=ans*a%p;
        a=a*a%p;
        n>>=1;
    }
    return ans;
}

int bace(int a,int p){
    return quickpow(a,p-2,p);
}

扩展欧几里得算法可以求逆元.

正确性证明

若要 \(ax\equiv 1 \pmod b\),则有 \(ax=by+1\),即 \(ax-by=1\). 这里 \(y\) 为中间参数,取相反数不影响结果. 有 \(ax+by=1\),所以可以使用扩展欧几里得算法求逆元. 只需要满足 \(a,b\) 互质.

$Program$
int exgcd(int a,int b,int &x,int &y){
    if (b==0) {
        x=1;
        y=0;
        return a;
    }
    // 注意传参顺序
    int ret=exgcd(b, a%b, y, x);
    y-=a/b*x;
    return ret;
}

还有一种线性求逆元的方法,适合多次大量预处理时使用,利用的原理为

\(No.5311\) \(i^{i}\equiv -\lfloor {\frac{p}{i}} \rfloor \times (p\ mod\ i)^{-1}\pmod {p}\)

$Program1$
ny[1] = 1;
for (int i = 2; i < p; ++i) {
    ny[i] = (long long)-(p / i) * ny[p % i] % p; // 注意最后的模 p 不要忘记
}
$Program2$
// 因为 1<i<p,所以 p/i 一定小于 p
ny[1] = 1;
for (int i = 2; i < p; ++i) {
    ny[i] = (long long)(p - p / i) * ny[p % i] % p; // 注意最后的模 p 不要忘记
}

5.3.2 线性同余方程

\(No.5321\) 线性同余方程 \(ax\equiv b \pmod m\) 有解的充要条件为 \((a,m)\mid b\).

我们注意到 \(ax\equiv b \pmod m\) 实际上等价于 \(ax-b=ym\ (y\in Z)\). 移项可得 \(ax-ym=b\),不妨设 \(y=-y\),那么有 \(ax+my=b\). 因此我们可以利用扩展欧几里得解出一组通解 \(x_{0},y_{0}\),那么方程的一个解就为 \(x_{1}=\frac{bx_{0}}{(a,m)}\),通解 \(x\) 满足 \(x\equiv x_{1} \pmod {\frac{m}{(a,m)}}\).

5.4 中国剩余定理

中国剩余定理算法可以用于求解一个线性同余方程组 \(\sum_{i} x \equiv a_{i} \pmod n_{i}\) (其中模数必须两两互质).

中国剩余定理的主要内容体现流程如下:

  1. 计算 \(n=\prod_{i} n_{i}\)

  2. 计算 \(\sum_{i} m_{i}=\frac{n}{n_{i}}\)

  3. 计算 \(\sum_{i} c_{i}=m_{i}\times m_{i}^{-1}\pmod {m_{i}}\)

  4. \(x=\sum_{i} a_{i}\times c_{i}\ mod\ n\).

正确性证明

引用我们在步骤中使用到的变量.

因为全部的 \(n_{i}\) 两两互质,因此将全部两两互质的数乘起来,可知 \(n\) 其中的质因子 \(n_{i}\) 必然只有一个. 那么 $ m_{i}=\frac{n}{n_{i}}$ 中必然没有质因子 \(n_{i}\),也就是说 \(m_{i},n_{i}\) 互质.

因为互质,所以由乘法逆元的定义,我们可以推出

\[m_{i}\times m_{i}^{-1}\equiv 1 \pmod {n_{i}} \]

\(No.515\),可得

\[m_{i}\times m_{i}^{-1}\times a_{i}\equiv a_{i} \pmod {n_{i}} \]

并且根据上述两两互质,又因为 \(m_{i}=\frac{n}{n_{i}}\),因此 \(m_{i}\ mod\ n_{j}=0\),我们还可以得出

\[m_{i}\times m_{i}^{-1}\times a_{i}\equiv 0 \pmod {n_{j}}\ (i\neq j) \]

根据构造,可得

\[x\equiv \sum_{i} (a_{i}\times m_{i}\times m_{i}^{-1})\pmod n \]

符合原方程组的形式,即存在 \(x\) 为原方程的解.

6.排列与组合

6.1 概述

排列是指若干元素排成一列的不同情况 (考虑顺序). 从 \(n\) 个元素中选出 \(m\) 个数的排列的个数称为 \(n\)\(m\) 的排列数,记作 \(A^{m}_{n}\).

排列数的计算公式为

\[A^{m}_{n}=n\ (n-1)\ (n-2)...(n-m+1) \]

也即

\[A^{m}_{n}=\frac{n!}{(n-m)!} \]

组合是将若干元素选入集合内的不同情况 (不考虑顺序). 从 \(n\) 个元素中选出 \(m\) 个数的组合的个数称为 \(n\)\(m\) 的组合数,记作 \(C^{m}_{n}\).

组合数的计算公式为

\[C^{m}_{n}=\frac{n\ (n-1)\ (n-2)...(n-m+1)}{m\ (m-1)\ (m-2)...1} \]

也即

\[C^{m}_{n} = \frac {A^{m}_{n}} {A^{m}_{m} } = \frac{n!}{m!\ (n-m)!} \]

一般来说,我们有

\(A^{n}_{n}=A^{n-1}_{n}\).

\(A^{1}_{n}=n\)\(C^{1}_{n}=n\).

\(A^{n}_{n}=n!\)\(C^{n}_{n}=1\).

\(C^{n-1}_{n}=n\).

\(C^{m}_{n}=C^{n-m}_{n}\).

\(C^{m}_{n}=C^{m-1}_{n-1}+C^{m}_{n-1}\).

6.1.1 二项式定理

二项式定理用于对 \((x+y)^{k}\) 进行展开

\(No.6111\) \((x+y)^{n}=\sum_{i = 0}^n C_{n}^i x^{n - i} y^{i}\)

6.2 快速组合数求法

6.2.1 Lucas 定理

Lucas 定理的适用条件: 组合数很大,模数较小 (一般 \(\le 10^{5}\)) ,且为素数.

\(No.6211\) \(C^{m}_{n}=C^{\lfloor {\frac{m}{p}} \rfloor}_{\lfloor {\frac{n}{p}} \rfloor}\times C^{m\ mod\ p}_{n\ mod\ p}\ mod\ p\).

\[P.6211 \]

不妨设 \(p\) 为质数. 那么对于 \(j\in [1,p)\),有:

\[C^{j}_{p}=\frac{p!}{j!\ (p-j)!}=\frac{(p-1)!}{(j-1)!\ (p-j)!}\times \frac{p}{j} \]

可以发现提出了一个因子 \(p\). 也就是说 \(C^{j}_{p}\mod p=0\).

那么根据二项式定理,

\[(1+j)^{p}=1+\sum^{p-1}_{i} [C^{i}_{p}\times j^{i}] +j^{p} \]

因为已证得中间一项中一定有因子 \(p\),故

\[\sum^{p-1}_{i} [C^{i}_{p}\times j^{i}]\ mod\ p=0 \]

也即

\[(1+j)^{p} \equiv 1+j^{p} \pmod p \]

在这里我们进行构造,设 \(n=sp+q,m=lp+r\ (p,r\in [1,p)\). 也就是都表示成带余除法式. 那么

\[(1+x)^{sp+q}=(1+x)^{sp}\ (1+x)^{q} \]

根据上面的结论,有

\[(1+x)^{sp}\ (1+x)^{q} \equiv (1+x^{p})^{s}\ (1+x)^{q}\pmod p \]

再根据二项式定理展开,那么

\[(1+x)^{sp+q} \equiv [\sum_{i}\ (C^{i}_{s}\times x^{pi})]\times [\sum_{i}\ (C^{i}_{q}\times x^{j})]\pmod p \]

假若我们只观察 \(x^{lp+r}\) 项. 可以发现 \(C^{lp+r}_{sp+q}\times x^{lp+r}\equiv C^{l}_{s}\times x^{lp}\times C^{r}_{q}\times x^{r} \pmod p\).

根据我们的定义 \(n=sp+q,m=lp+r\),将原式代换,可得

\[C^{m}_{n}\times x^{m}\equiv C^{l}_{s}\times C^{r}_{q}\times x^{m} \pmod p \]

两边同时除以 \(x^{m}\)

\[C^{m}_{n}\equiv C^{l}_{s}\times C^{r}_{q}\pmod p \]

那么根据定义,有

\[C^{m}_{n}\equiv C^{\lfloor {\frac{m}{p}} \rfloor}_{\lfloor {\frac{n}{p}} \rfloor}\times C^{m\ mod\ p}_{n\ mod\ p}\pmod\ p \]

$Program_{1}$
long long power(long long a,long long n){
	long long ans=1;
    while(n){
        if(n&1)ans=ans*a%p;
        a=a*a%p;
        n>>=1;
    }
    return ans;
}
long long C(long long n,long long m){
	if(n<m){
		return 0;
	}
	if(m>n-m){
		m=n-m; //C{n}{m}=C{n}{n-m};
	}
	long long a=1,b=1;
	for(int i=0;i<m;++i){
		a=(a*(n-i))%p;
		b=(b*(i+1))%p;
	}
	return a*power(b,p-2)%p;
}
long long lucas(long long n,long long m){
	if(!m) return 1;
	return lucas(n/p,m/p)*C(n%p,m%p)%p;
}
$Program_{2}$
long long fact[1000001];
long long power(long long a,long long n){
	long long ans=1;
    while(n){
        if(n&1)ans=ans*a%p;
        a=a*a%p;
        n>>=1;
    }
    return ans;
}
void dofact(){
	fact[0]=1;
	for(int i=1;i<=1000000;++i){
		fact[i]=fact[i-1]*i%p;
	}
}
long long C(long long n,long long m){
	if(!m){
		return 1;
	}
	if(n<m){
		return 0;
	}
	if(m>n-m){
		m=n-m; //C{n}{m}=C{n}{n-m};
	}
	long long ans=fact[n]*power(fact[m],p-2)%p*power(fact[n-m],p-2)%p;
	return ans;
}
long long lucas(long long n,long long m){
	if(!m) return 1;
	return lucas(n/p,m/p)*C(n%p,m%p)%p;
}

7.斐波那契数列

7.1 整除推论

\((i,j)=gcd(i,j)\)

\[f_{i}=f_{i-1}+f_{i-2} \]

\[f_{i}=f_{i-2}\times f_{1}+f_{i-1}\times f_{2} \]

\[f_{i}=f_{i-1}\times f_{2}+f_{i-2}\times f_{1} \]

\[f_{i}=(f_{i-3}+f_{i-2})\times f_{2}+f_{i-2}\times f_{1} \]

\[f_{i}=f_{i-3}\times f_{2}+f_{i-2}\times f_{3} \]

\[f_{i}=f_{i-k}\times f_{k-1}+F_{i-k+1}\times f_{k} \]

\[f_{n+m}=f_{n-1}\times f_{m}+f_{n}\times f_{m+1} \]

\[(f_{1},f_{2})=(f_{2},f_{3})=(f_{i},f_{i-1})=(f_{i}-f_{i-1},f_{i-1})=(f_{i-2},f_{i-1})=1 \]

\[f_{(i,j)}=(f_{i},f_{j})\rightarrow f_{j}\mid f_{i}=j\mid i \]

因为 \(f_{2}=1\),则 \(f_{2}\mid 2x+1(x\in Z)\),但 \(2\nmid 2x+1 (x\in Z)\),故上述式子存在特例,且该特例唯一.

7.2 约数推论

\(tot(i)\)\(i\) 的约数的个数,将 \(i\) 用唯一分解定理分解为

\[i=\prod\limits_{i}p_{i}^{c_{i}} \]

则有

\[tot(i)=\prod(c_{i}+1) \]

那么

\[tot(i\times j)=\prod\limits_{i}p_{i}^{c_{i}}\times \prod\limits_{j}p_{j}^{c_{j}}=tot(i)\times tot(j) \]

\(tot(x)\)积性函数.

若质数 \(p\mid i\),则 \(min_{j}[j\mid (i\times p)]=p\),且 \(c_{p_{i}}=2\)

若质数 \(p\)\(i\times p\) 的最小因子,不妨设

\[i=p^{c_{p}}\times\prod\limits_{i}p_{i}^{c_{p_{i}}} \]

\[tot(i)=c_{p}\times \prod\limits_{i}c_{p_{i}} \]

\[i\times p=p^{c_{p}+1}\times\prod\limits_{i}p_{i}^{c_{p_{i}}} \]

\[tot(i\times p)=(c_{p}+1)\times \prod\limits_{i}c_{p_{i}} \]

\[tot(i\times p)=\frac{tot(i)}{c_{p}}\times (c_{p}+1) \]

所以我们引入 \(mintimes(i)\) 表示 \(i\) 的最小约数的 \(c_{i}\).

上述式子可以表示成

\[tot(i\times p)=\frac{tot(i)}{mintimes(i)}\times (mintimes(i)+1) \]

上述推论对全部 \(p\in p_{i}\) 均成立

7.3 平方和推论

\(sqrtot(i)\)\(i\) 的约数的平方和,与 \(tot(i)\) 类似,可得

\[sqrtot(x)=\prod_{i}\ \sum_{j=0}^{c_{i}}(p_{i}^{j})^{2} \]

\[sqrtot(i\times j)=\prod_{i}\ \sum_{j=0}^{c_{i}}(p_{i}^{j})^{2}\times \prod_{i'}\ \sum_{j'=0}^{c_{i'}}(p_{i'}^{j'})^{2}=sqrtot(i)\times sqrtot(j) \]

所以 \(sqrtot(x)\) 也为积性函数

同理,不妨设

\[p_{sum}=\sum_{j=0}^{c_{p_{i}}}(p^{j})^{2} \]

\[sqrtot(i)=p_{sum}\times \prod_{i}\ \sum_{j=0}^{c_{i}}(p_{i}^{j})^{2} \]

\[sqrtot(i\times p)=(p^{2}\times p_{sum}+1)\times \prod_{i}\ \sum_{j=0}^{c_{i}}(p_{i}^{j})^{2} \]

7.4 通项公式

斐波那契的递推定义式为 \(f_{n}=f_{n-1}+f_{n-2}\)

考虑将递推式构造成等比数列形式,即 \(g_{n}=kg_{n-1}\) 的形式,再考虑到斐波那契的递推式由两个元素决定,故表示如下:

\[f_{n}-\lambda f_{n-1}=\mu (f_{n-1}-\lambda f_{n-2}) \]

\(f_{n}=f_{n-1}+f_{n-2}\) 代入,得

\[f_{n-1}+f_{n-2}-\lambda f_{n-1}=\mu f_{n-1}-\mu\lambda f_{n-2} \]

\[(\mu +\lambda -1)f_{n-1}=(1+\mu\lambda)f_{n-2} \]

因为 \(f_{n-1}\neq f_{n-2}\),故有:

\[\begin{cases}\mu +\lambda -1=0\\1+\mu\lambda=0\end{cases} \]

解得

\[\begin{cases} \lambda = \frac{1+\sqrt{5}}{2}\\ \mu = \frac{1-\sqrt{5}}{2} \end{cases}\]

\[\begin{cases} \lambda = \frac{1-\sqrt{5}}{2}\\ \mu = \frac{1+\sqrt{5}}{2} \end{cases}\]

带回等比数列,归纳出通项公式:

\[f_n-\frac{1+\sqrt{5}}{2}f_{n-1}=(\frac{1-\sqrt{5}}{2})^{n-2}(f_2-\frac{1+\sqrt{5}}{2}f_1)\tag{1} \]

\[f_n-\frac{1-\sqrt{5}}{2}f_{n-1}=(\frac{1+\sqrt{5}}{2})^{n-2}(f_2-\frac{1-\sqrt{5}}{2}f_1)\tag{2} \]

因为这两个式子相对于原式均成立,因此我们尝试从两个式子中消掉 \(f_{n-1}\) 项,可知 \((2)\times \frac{1-\sqrt{5}}{2}-(1)\times \frac{1+\sqrt{5}}{2}\) 即可得到通项公式

整理得

\[f_{n}=\frac{1}{\sqrt{5}}[(\frac{\sqrt{5}+1}{2})^{n}-(\frac{1-\sqrt{5}}{2})^{n}] \]

7.5 斐波那契间项积与中项平方的关系

\[f_{n}f_{n-2}-f_{n-1}^{2}=(-1)^{n-1} \]

正确性证明

为了简化我们的证明,以下令 \(P=\frac{\sqrt{5}+1}{2},Q=\frac{1-\sqrt{5}}{2}\),则通项公式可表述为 \(\frac{1}{\sqrt{5}}(P^{n}-Q^{n})\)

将原式全部用通项公式代换,得

\[\frac{1}{\sqrt{5}\times\sqrt{5}}(P^{n}-Q^{n})(P^{n-2}-Q^{n-2})-\frac{1}{(\sqrt{5})^{2}}(P^{n-1}-Q^{n-1})^{2} \]

全部拆开

\[\frac{1}{5}[P^{2n-2}+Q^{2n-2}-P^{n}Q^{n-2}-P^{n-2}Q^{n}-(P^{2n-2}+Q^{2n-2}-2P^{n-1}Q^{n-1})] \]

消项

\[\frac{1}{5}[-P^{n}Q^{n-2}-P^{n-2}Q^{n}+2P^{n-1}Q^{n-1}] \]

变形

\[-\frac{1}{5}[P^{n-1}Q^{n-1}(\frac{P}{Q}+\frac{Q}{P}-2)] \]

\[-\frac{1}{5}[(PQ)^{n-1}(\frac{P}{Q}+\frac{Q}{P}-2)] \]

因为上文中设 \(P=\frac{\sqrt{5}+1}{2},Q=\frac{1-\sqrt{5}}{2}\),故 \(PQ=-1,\frac{P}{Q}=-\frac{3+\sqrt{5}}{2},\frac{Q}{P}=-\frac{3-sqrt{5}}{2},\frac{P}{Q}+\frac{Q}{P}-2=-5\),消去 \(-\frac{1}{5}\),得

\[f_{n}f_{n-2}-f_{n-1}^{2}=(-1)^{n-1} \]

7.6 斐波那契同比

\(n\rightarrow +\infty\) 时,\(\frac{f_{n}}{f_{n-1}}=\frac{f_{n-1}}{f_{n-2}}\)

正确性证明

由 7.5 可知,\(f_{n}f_{n-2}-f_{n-1}^{2}=(-1)^{n-1}\),对其移项

\[f_{n}f_{n-2}=(-1)^{n-1}+f_{n-1}^{2} \]

同除 \(f_{n-1}f_{n-2}\)

\[\frac{f_{n}}{f_{n-1}}=\frac{(-1)^{n-1}}{f_{n-1}f_{n-2}}+\frac{f_{n-1}}{f_{n-2}} \]

\(n\rightarrow +\infty\) 时,\(\frac{(-1)^{n-1}}{f_{n-1}f_{n-2}}\rightarrow 0\),故有

\[\frac{f_{n}}{f_{n-1}}=\frac{f_{n-1}}{f_{n-2}} \]

7.7 斐波那契黄金公比

由 7.6,设 \(\frac{f_{n}}{f_{n-1}}=\frac{f_{n-1}}{f_{n-2}}=k\),有

\[\frac{f_{n-1}+f_{n-2}}{f_{n-1}}=\frac{f_{n-1}}{f_{n-2}}=k \]

\[1+\frac{f_{n-2}}{f_{n-1}}=\frac{f_{n-1}}{f_{n-2}}=k \]

\[f_{n-1}f_{n-2}+f_{n-2}^{2}=f_{n-1}^{2} \]

此时将 \(f_{n-1}=kf_{n-2}\) 代入

\[kf_{n-2}^{2}+f_{n-2}^{2}=k^{2}f_{n-2}^{2} \]

消去 \(f_{n-2}^{2}\)

\[k+1=k^{2} \]

解得 \(k=\frac{1+\sqrt{5}}{2}\),即黄金分割比

8.导数与积分

8.1 导数

8.1.1 导数的意义

\(f(x)\)\(x\) 处的导数 \(f'(x)\) 的含义为:\(f(x)\) 在 x 处的切线斜率 \(k\). 如 \(f(x_{0}):kx+b=k\).

8.1.2 基本导数公式

\[[f(x)+g(x)]'=f'(x)+g'(x) \]

\[[f(x)\times g(x)]'=f(x)g'(x)+f'(x)g(x) \]

推论

\[[kf(x)]'=kf'(x) \]

\[[\frac{f(x)}{g(x)}]'=\frac{f'(x)g=(x)-f(x)g'(x)}{g^{2}(x)} \]

8.1.3 初等函数导数公式

  1. \((k)'=0\)

  2. \((x^{k})'=kx^{k-1}\)

  3. \((a^{x})'=a^{x}ln\ a\)

  4. \((log_{a}x)'=\frac{1}{xln\ a}\)

  5. \((sin\ x)'=cos\ x\)

  6. \((cos\ x)'=-sin\ x\)

  7. \((tan\ x)'=sec^{2}\ x\)

  8. \((sinh\ x)'=cosh\ x\)

8.1.4 反函数公式

\[[f^{-1}(x)]'=-f'(x)\times f^{-2}(x) \]

8.1.5 复合函数导数公式

\[\frac{d}{dx}f[g(x)]=\frac{d}{dx}g(x)\times \frac{d}{d\ g(x)}f[g(x)] \]

8.1.6 牛顿莱布尼茨公式

\[(f(x)g(x))^{n}=\sum\limits_{k=0}^{n}C^{k}_{n}f^{k}(x)g^{n-k}(x) \]

举点例子

\(2x^{3}+3^{x}\) 求导

套式子,\(f'(x)=2(x^{3})'+(3^{x})'=6x^{2}+3^{x}ln\ 3\)

或者使用公式 \(f'(x)=\frac{f(x+dx)-f(x)}{dx}\) 直接计算,其中 \(dx\) 是一个引入的无穷小的变量,先约,然后按 \(kdx=0\) 进行消项.

\(x^{3}\) 求导

\(\frac{df(x)}{dx}=\frac{(x+dx)^{3}-x^{3}}{dx}=\frac{x^{3}+3x^{2}dx+3xdx^{2}+dx^{3}-x^{3}}{dx}=3x^{2}+3xdx-dx^{2}\),当 \(dx\rightarrow 0\) 时,\(\frac{df(x)}{dx}=3x^{2}\)

8.2 积分

8.2.1 定义

\[\int_{a}^{b}f(x)dx \]

表示 \(f(x)\) 在区间 \([a,b]\) 内的图像与 \(x\) 轴围成封闭图形的面积(这样说是不严谨的,实际上还要包括 \(y=a,y=b\) ).

\[\int_{0}^{3}2dx=2\times (3-0)=6 \]

表示函数 \(f(x)=2\)\(y=0,y=3,x\) 轴围成的图形面积为 \(6\).

积分符号用来表示 “某段区间内连续不断的加和” 这样的概念,不一定非得是面积. 只不过面积是长乘宽,当宽无穷小时(即 \(dx\)),对应的长即为 \(f(x)\),面积为 \(f(x)dx\).

8.2.2 基本定理

\(f(x)=\frac{d}{dx}g(x)\),则

\[\int_{a}^{b}f(x)dx=\int_{a}^{b}\frac{d}{dx}g(x)dx=\int_{a}^{b}dg(x) \]

实际上,它告诉我们的是 “将 \(g(x)\)\([a,b]\) 的微小变化加和”,即:

\[\int_{a}^{b}g'(x)dx=g(b)-g(a) \]

根据基本定理,我们要求一个函数 \(f(x)\) 的积分,重在知道一个 \(g(x)\),使得 \(g'(x)=f(x)\),因为对于任意合适的 \(g(x)\)\([g(x)+c]'=f(x)\),所以称 \(g(x)+c\)\(f(x)\) 的不定积分,其中 \(c\in R\).

比如我们需要求出

\[\int_{a}^{b}x^{2}dx \]

首先我们需要知道 \(x^{2}\) 的最简单的不定积分应为 \(\frac{1}{3}x^{3}\),因为 \((\frac{1}{3}x^{3})'=x^{2}\),则,

\[\int_{a}^{b}x^{2}dx=g(b)-g(a)=\frac{1}{3}(b^{3}-a^{3}) \]

8.2.3 算术定理

1

\[\int_{a}^{b}[f(x)+g(x)]dx=\int_{a}^{b}f(x)dx+\int_{a}^{b}g(x)dx \]

2

\[\int_{a}^{b}[kf(x)]dx=k\int_{a}^{b}f(x)dx \]

3

\[\int_{a}^{b}[f(x)g(x)]'dx=f(b)g(b)-f(a)g(a) \]

\[\int_{a}^{b}[f'(x)g(x)+f(x)g'(x)]dx=f(b)g(b)-f(a)g(a) \]

根据 1 有:

\[\int_{a}^{b}[f'(x)g(x)]+\int_{a}^{b}[f(x)g'(x)]dx=f(b)g(b)-f(a)g(a) \]

移项:

\[\int_{a}^{b}[f'(x)g(x)]=f(b)g(b)-f(a)g(a)-\int_{a}^{b}[f(x)g'(x)]dx \]

8.2.4 换元法

\[d[F(u)]=d[F(\phi(x)]=f[\phi(x)]\phi'(x)dx\rightarrow \int f[\phi(x)]\phi'(x)dx = F[\phi(x)] + C = [\int f(u)du]_{u=\phi(x)} \]

\[\int f(x) dx = [\int f[\phi(t)]\phi'(t)dt]_{t = \phi^{-1}(x)} \]

8.2.5 逆基本定理

\[\frac{d}{dx}[\int_{a}^{x}f'(x)dx]=\frac{d}{dx}[\int_{a}^{x+dx}f'(x)dx-\int_{a}^{x}f'(x)dx]=f(x) \]

9. 莫比乌斯函数与莫比乌斯反演

9.1 莫比乌斯函数

9.1.1 定义

\(\mu\) 为莫比乌斯函数,则有:

\[\mu(x)=\begin{cases}1\qquad (n=1)\\ 0\qquad (∃\ i\ (ki=x,k\in Z\rightarrow \sqrt{i}\in Z))\\ (-1)^{\sum_{i\in prime}[i\mid x]}\end{cases} \]

直观地说,只要 \(x\) 的某个质因子出现的次数超过一次,则有 \(\mu(x)=0\),否则,\(mu(x)\) 即为 \((-1)^{t}\),其中 \(t\)\(x\) 的质因数总数.

9.1.2 性质

\(No.9121\) \(\forall (i,j)=1\rightarrow\mu(i\times j)=\mu(i)\times \mu(j)\)

\[P.9121 \]

\(\mu(A)=1\),则有 \(\mu(A)\times \mu(B)=1\times \mu(B)=\mu(1\times B)\),结果成立

\(\mu(A)=0\),则有 \(\mu(A)\times\mu(B)=0\),结果成立

否则设 \(A=\prod_{i\in prime}i,B=\prod_{j\in prime}j\ (\forall i\neq j)\),则有 \(\mu(A)\times\mu(B)=\mu(A\times B)\)

\(No.9122\)

\[\sum_{d\mid n}\mu(d)=\begin{cases}1\qquad (n=1)\\0\qquad(n\neq 1)\end{cases} \]

\[P.9122 \]

\(n=0\) 时,原式等于 \(0\)

\(n=1\) 时,原式等于 \(\mu(1)=1\)

否则,设 \(n\) 的唯一分解式为 \(n=\prod_{1\le i\le k}p_{i}^{a_{i}}\),由 \(\mu(n)\neq 0\)\(\forall a_{i}=1\)

显然,\(\forall d\mid n\),有 \(i\) 个质因子的数 \(d\)\(C^{i}_{k}\) 种组合情况,每种组合的值为 \((-1)^{i}\),即:

\[\sum_{d\mid n}\mu(d)=\sum_{0\le i\le k}\{C^{i}_{k}\times (-1)^{i}\} \]

使用二项式定理转化:

\[\sum_{d\mid n}\mu(d)=(1+(-1))^{k}=0^{k} \]

发现此时在定义域 \((k\neq 0)\) 内恒为 \(0\),易知当 \(n\gt 1\) 时,\(k_{n}\ge 1\),因此 \(\mu(n)=0\),证毕.

9.2 莫比乌斯反演

9.2.1 不完全结论

\[f(a,b,k)=\begin{cases}1\qquad((a,b)=k)\\0\end{cases} \]

对于

\[g(n,m,k)=\sum^{n}_{i=1}\sum^{m}_{j=1}f(i,j,k) \]

考虑到

\[g(n,m,k)=\sum^{\lfloor{\frac{n}{k}}\rfloor}_{i=1}\sum^{\lfloor{\frac{m}{k}}\rfloor}_{j-1}f(i,j,1) \]

根据 \(No.9122\) 得出推导式:

\[\sum_{d\mid (a,b)}\mu(d)=\begin{cases}1\qquad ((a,b)=1)\\0\qquad((a,b)\neq 1)\end{cases} \]

代入有:

\[f(i,j,1)=\sum_{d\mid (i,j)}\mu(d) \]

即:

\[g(n,m,k)=\sum^{\lfloor{\frac{n}{k}}\rfloor}_{i=1}\sum^{\lfloor{\frac{m}{k}}\rfloor}_{j-1}=\sum_{d\mid (i,j)}\mu(d) \]

将原式等价转换,可以得到

\[g(n,m,k)=\sum_{d=1}\mu(d)\sum^{\lfloor{\frac{n}{k}}\rfloor}_{i=1}\sum^{\lfloor{\frac{m}{k}}\rfloor}_{j-1}h(i,j) \]

其中

\[h(i,j)=\begin{cases}1\qquad(d\mid i,d\mid j)\\0\end{cases} \]

(可以发现,在这里仅仅是将判断条件与枚举条件互相变换了,而答案是不变的)

在区间 \([1,\lfloor{\frac{n}{k}}\rfloor]\) 中,满足条件 \(d\mid i\)\(i\)\(\lfloor{\frac{n}{kd}}\rfloor\) 个,因此原式可化为

\[g(n,m,k)=\sum_{d=1}\mu(d)\times\lfloor{\frac{n}{kd}}\rfloor\times\lfloor{\frac{m}{kd}}\rfloor \]

可以证明,当 \(d\gt \min(\lfloor{\frac{n}{k}}\rfloor,\lfloor{\frac{m}{k}}\rfloor)\) 时不存在解.

9.2.2 完全结论

设两个函数 \(f,g\) 满足如下等式:

\[g(n)=\sum_{d\mid n}f(d) \]

则有:

\[f(n)=\sum_{d\mid n}\mu(d)g(\lfloor{\frac{n}{d}}\rfloor) \]

特别地:对于莫比乌斯反演还有如下等式:

设两个函数 \(f,g\) 满足如下等式:

\[g(n)=\sum_{n\mid d}f(d) \]

则有:

\[f(n)=\sum_{n\mid d}\mu(\frac{d}{n})g(d) \]

10.容斥原理拓展

10.1 二项式反演

\[P.10.1(1) \]

\(U=\{S_1,S_2,S_3...S_n\}\),且任意 \(i\) 个元素的交集都相等

定义 \(g(x)\)\(x\) 个集合的交集,\(f(x)\)\(x\) 个集合补集的交集(定义 \(f(0)=g(0)=U\)),则:

\[\mid\bigcap^{n}_{i}S_{i}\mid=\mid U\mid+\sum_{i}\{(-1)^{i}\times\mid f(i)\mid\} \]

可知对 \(g(i)\),符合要求的 \(f(i)\) 组合共有 \(C^{i}_{n}\) 种,即原式可以化为:

\[\mid\bigcap^{n}_{i}S_{i}\mid=\sum^{n}_{i}(-1)^{i}C^{i}_{n}\mid f(i)\mid \]

同理有

\[\mid\bigcap^{n}_{i}\complement_{U}S_{i}\mid=\sum^{n}_{i}(-1)^{i}C^{i}_{n}\mid g(i)\mid \]

因为

\[\mid f(n)\mid=\mid\bigcap^{n}_{i}\complement_{U}S_{i}\mid,\mid g(n)\mid=\mid\bigcap^{n}_{i}S_{i}\mid \]

因此得出结论:

\[g(n)=\sum^{n}_{i=0}(-1)^{i}C^{i}_{n}f(i)\iff f(n)=\sum^{n}_{i=0}(-1)^{i}C^{i}_{n}g(i) \]

\[P.10.1(2) \]

因为

\[C^{i}_{n}\times C^{j}_{i}=\dfrac{n!}{(n-i)!i!}\times \dfrac{i!}{(i-j)!j!}=\dfrac{n!}{(n-j)!j!}\times\dfrac{(n-j)!}{[(n-j)-(n-i)]!(i-j)!}=C^{j}_{n}\times C^{n-1}_{n-j} \]

因此

\[\sum^{n}_{i=j}\{(-1)^{i}\times C^{i}_{n}\times(-1)^{j}\times C^{j}_{i}\}=C^{j}_{n}(-1)^{j}\sum^{n-j}_{i=0}C^{i}_{n-j}=C^{j}_{n}\times (1-1)^{n-j}=C^{j}_{n}\times 0^{n-j} \]

\(j\neq n\) 时,原式值为 \(0\),否则值为 \(1\).

\(g(n)=\sum\limits^{n}_{i=0}(-1)^{i}C^{i}_{n}f(i)\iff f(n)=\sum\limits^{n}_{i=0}(-1)^{i}C^{i}_{n}g(i)\) 成立时,可以推知

\[f(n)=\sum^{n}_{i=0}(-1)^{i}C^{i}_{n}=\sum^{n}_{i=0}(-1)^{i}C^{i}_{n}\sum^{n}_{i=j}(-1)^{j}C^{j}_{i}f(j)=\sum^{n}_{j=0}f(j)\sum^{n}_{i=j}\{(-1)^{i}\times C^{i}_{n}\times(-1)^{j}\times C^{j}_{i}\} \]

该式末项 \(\sum\limits^{n}_{i=j}\{(-1)^{i}\times C^{i}_{n}\times(-1)^{j}\times C^{j}_{i}\}\) 已有上述结论,故当 \(j\neq n\)\(j=n\) 时分别带入讨论,发现原式均成立,证毕.

事实上,二项式反演还有一个更常用的推导式:

\[g(n)=\sum\limits_{i=0}^nC^{i}_{n}f(i)\iff f(n)=\sum\limits_{i=0}^n(-1)^{n-i}C^{i}_{n}g(i) \]

根据二项式反演的性质,我们通常会构造一组 \(\{ f(i),g(i)\}\),使得两者之间存在包含关系并且有一者很方便求出,通过反演来快速得到另一者的值.

二项式反演还有其他形式:

\[g(n)=\sum\limits_{i=n}^N(-1)^iC^{i}_{n}f(i)\iff f(n)=\sum\limits_{i=n}^N(-1)^{i}C^{i}_{n}g(i) \]

\[g(n)=\sum\limits_{i=n}^NC^{i}_{n}f(i)\iff f(n)=\sum\limits_{i=n}^N(-1)^{i-n}C^{i}_{n}g(i) \]

10.2 Min-Max 容斥

对于满足全序关系并且其中元素满足可加减性的序列 \(\{x_i\}\),设其长度为 \(n\),并设 \(S=\{1,2,3,\cdots,n\}\) ,则有:

\[\max_{i\in S}{x_i}=\sum_{T\subseteq S}{(-1)^{|T|-1}\min_{j\in T}{x_j}} \]

\[\min_{i\in S}{x_i}=\sum_{T\subseteq S}{(-1)^{|T|-1}\max_{j\in T}{x_j}} \]

一个常用的实际应用为 Min-Max 容斥的低维版本:\(\min(a,b)=a+b-\max(a,b)\)

证明略.

10.3 错位排列

满足 \(\forall i\neq a_{i}\) 的排列被称为错位排列.

10.3.1 公式

套用补集的公式,问题变成求

\[\left|\bigcup_{i=1}^n\overline{S_i}\right| \]

可以知道,\(\overline{S_i}\) 的含义是满足 \(P_i=i\) 的排列的数量。用容斥原理把问题式子展开,需要对若干个特定的集合的交集求大小,即:

\[\left|\bigcap_{i=1}^{k}S_{a_i}\right| \]

其中省略了 \(a_i<a_{i+1}\) 的条件以方便表示

上述 \(k\) 个集合的交集表示有 \(k\) 个变量满足 \(P_{a_i}=a_i\) 的排列数,而剩下 \(n-k\) 个数的位置任意,因此排列数:

\[\left|\bigcap_{i=1}^{k}S_{a_i}\right|=(n-k)! \]

那么选择 \(k\) 个元素的方案数为

\(C^{k}_{n}\),因此有:

\[\begin{aligned} \left|\bigcup_{i=1}^n\overline{S_i}\right| &=\sum_{k=1}^n(-1)^{k-1}\sum_{a_{1,\cdots,k} }\left|\bigcap_{i=1}^{k}S_{a_i}\right|\\ &=\sum_{k=1}^n(-1)^{k-1}C^{k}_{n}(n-k)!\\ &=\sum_{k=1}^n(-1)^{k-1}\frac{n!}{k!}\\ &=n!\sum_{k=1}^n\frac{(-1)^{k-1} }{k!} \end{aligned}\]

因此 \(n\) 的错位排列数为:

\[D_n=n!-n!\sum_{k=1}^n\frac{(-1)^{k-1} }{k!}=n!\sum_{k=0}^n\frac{(-1)^k}{k!} \]

10.3.2 递推式

\[D_{n}=(n-1)(D_{n-1}+D_{n-2}) \]

\[D_{n}=nD_{n-1}+(-1)^{n}) \]

待证明

10.4 Catalan 数

1 1 2 5 14 42 132

\[H_n = \frac{\binom{2n}{n}}{n+1} \]

关于 Catalan 数的常见公式:

\[H_n = \begin{cases} \sum_{i=1}^{n} H_{i-1} H_{n-i} & n \geq 2, n \in \mathbf{N_{+}}\\ 1 & n = 0, 1 \end{cases}\]

\[H_n = \frac{H_{n-1} (4n-2)}{n+1} \]

\[H_n = C^{n}_{2n} - C^{n-1}_{2n} \]

\(\aleph\). 杂项

\(\aleph\).1 平方数模意义下的特殊性质

对于任意 \(x\in Z\),都有 \(x^{2}\ mod\ 3\neq 2\).

\[P.\aleph.1 \]

\(x=3k+p\ (k,p\in Z,\ 0\le p\le 2)\)

则有

\[x^{2}=(3k+p)^{2}=9k^{2}+6kp+p^{2} \]

\[x^{2}\equiv p^{2}\pmod 3 \]

\(p=0\) 时,\(x^{2}\ mod\ 3=0\)

\(p=1\) 时,\(x^{2}\ mod\ 3=1\)

\(p=2\) 时,\(x^{2}\ mod\ 3=4\ mod\ 3=1\)

综上,\(x^{2}\ mod\ 3\neq 2\)

\(\aleph\).2 调和级数的发散性

证明下述式子:

\[\sum^{\infty}_{i=1}\frac{1}{i}=\infty \]

\[P.\aleph.2 \]

考虑对调和级数进行分组:

\[\{\frac{1}{1}\}+\{\frac{1}{2}\}+\{\frac{1}{3}+\frac{1}{4}\}+\{\frac{1}{5}+\frac{1}{6}+\frac{1}{7}+\frac{1}{8}\}\gt 1+\frac{1}{2}+\frac{1}{2}+\frac{1}{2}\cdots \]

以此类推,将区间 \((\frac{1}{2^{k-1}},\frac{1}{2^{k}}]\) 内的数分为一组,共 \(2^{k-1}\) 个数,最小数为 \(\frac{1}{2^{k}}\),可知其和最小为 \(\frac{1}{2^{k}}\times 2^{k-1}=\frac{1}{2}\),依次分组,得到的 \(\frac{1}{2}\) 也为无限组,即其不收敛

\(\aleph\).3 模意义概率

设有一分数 \(f_{a,b}=\frac{a}{b}\),则有 \(f_{a,b}\mod p=a\times b^{p-2}\)

定理一

\[(f_{a,b}\times f_{c,d})\mod p=(f_{a,b}\mod p)\times (f_{c,d}\mod p) \]

证明显然,因为 \((a\times b^{p-2})\times (c\times d^{p-2})=(a\times c)\times (b\times d)^{p-2}\)

定理二

\[(1-f_{a,b})\mod p=(1-(f_{a,b})\mod p)\mod p \]

(定义 \(a(\lt 0)\mod p=(a+kp)\mod p(a+kp\gt 0)\)

posted @ 2024-03-22 21:21  HaneDaniko  阅读(104)  评论(1编辑  收藏  举报