组合数学/欧拉函数/乘法逆元学习笔记
组合数学/欧拉函数/乘法逆元学习笔记
上课随便拿草稿纸记得,再不整理一下估计一过八月就找不到了\orz
排列组合
定义
性质
计数方法
- \(\rm i\) 捆绑法: 注意考虑总体的内部计数
- \(\rm ii\) 插空法:
Q: A B C D E 5个字母,要求AB不相邻,求排列方案数
Solution:
先排好 _C_D_E_ \(~~~\) 方案数为 \(A_3^3\)
对于AB,共有\(4\)空,一共插入\(2\)个字母,因此方案数为\(A_4^2\)
答案为 \(A_3^3 \times A_4^2 = 72.\) - \(\rm iii\) 隔板法:
Q: \(10\)个球,分\(3\)组,每组至少\(1\)个,求方案数?
Solution:
o_o_o_o_o_o_o_o_o_o
共\(9\)个空,我们要分\(3\)组,即用\(2\)个板子隔开,方案数为\(C_9^2\)
Extension:
一般形式: \(n\)个球,\(m\)组,每组至少\(k\)个,答案为\(C_{n+k-1}^{m-1}\) - \(\rm iv\) 分组分解:
Q: 甲乙丙丁戊五人,分\(3\)组,每组至少\(1\)人,球方案数?
Solution:\[ \text{分类} \begin{cases} 3 ~ 1 ~ 1 \rightarrow C_5^3 \times C_2^1 \times C_1^1 / A_2^2 \times A_3^3 \\ 2 ~ 1 ~ 1 \rightarrow C_5^2 \times C_3^2 \times C_1^1 / A_2^2 \times A_3^3 \end{cases} \]注意这里每次除以\(A_2^2\)是因为有重复组合需去除。
例题
Problem
给定一个\(n \times m\) 的网格,初始时第\(i\)行\(j\)列有数字\(a_{i,j},\)你可以进行两项操作:
- \(opt \rm i:\) 让两个相邻格子中的数各加\(1\).
- \(opt \rm ii:\) 让一个格子中的数字加\(2.\)
对于给定的\(n,m,L,R\),其中:
问可以执行多少次操作,使得所有格子上的数相同?
Solution
容易发现,使用若干次加\(2\)操作,可以将一个奇/偶数变成比它大的任意一个奇/偶数。因此,只要能够使所有格子中的数字奇偶性相同,就可以达成目的。因而对于本题,我们可以考虑从奇偶性入手。
接下来考虑\(opt \rm i\)的作用。使用一次\(opt \rm i\)会使两个相邻数字的奇偶性发生改变。若原来有\(a\)个奇数,则操作后可能会出现\({a-2,a,a+2}\)个奇数。但无论是哪种情况,\(a\)的奇偶性是不变的。
由于最后需要考虑将所有数变为奇数或偶数,则最终要是奇数或偶数中的某个总数为\(0\)。不妨假设原来奇数,偶数各有\(a,b\)个,由于\(0\)是偶数,因此\(a,b\)中至少有一个为偶数,否则不可能满足题意。
那么,是否只需要\(a,b\)满足至少有一个为偶,就可以满足题意呢?

事实上,对于任意两个奇数或偶数,只需要选择一条由若干个相邻格子所组成的“路径”。如图所示,将路径\(E \to F \to G \to H\)上的所有每组格子分别进行一次\(opt \rm i\),就可以将两个数全部变为奇数(偶数)。
因此,只要\(a,b\)中任意有一者为偶数(不妨设\(a\)为偶数),则只需要将所有的奇数两两配对,并通过上述方式使其全部变为奇数即可。
综上所述:符合题意的初始情况等价于存在偶数个格子是奇数或偶数的格子数是偶数。
那么如何来统计可行的方案数呢?
首先,若\(n \times m\) 为奇数,那么显然\(a,b\)为一奇一偶,满足上文的条件。
由于每一个格子有\((R-L+1)\)种选择,故答案为\((R-L+1)^{n \times m}\).
接下来考虑$n \times m \(为偶数的情况。 由于\)a+b = n \times m\(,因此需要满足\)a,b\(均为偶数,从所有的格子中选出\)a\(个(\)a\(为偶数)并指定这些位置为奇数,剩余为偶数,设\)[L,R]\(中有\)k\(个奇数,\)l$个偶数。则易得出答案为:
接着,考虑如何去求解这个公式,由二项式定理:\((k + l)^{n\times m} = \sum_{2 \mid a} C_{n \times m}^a \times k^a \times l^b.\)
可以发现,需要求的是里面次数为偶数的部分,因此只需要消去其中次数为奇数的部分即可。
同理,由二项式定理,\((k - l)^{n \times m} = \sum_{a = 0}^{n \times m }(-1)^a \times C_{n \times m}^a \times k ^a \times l^a.\)
需要求的是其次数为偶数的部分。
而这两个式子的奇数次幂相抵消,偶数次幂相同,因此只需要将两者相加除\(2\),即:
欧拉函数
定义
\(\varphi{(n)}\)表示\([1,n]\)之间,满足\((i,n) = 1 (i \in [1,n] ,i \in \Z)\)的个数。
求解
性质
质数\(p\)有
- $\varphi(p) = p-1 $
- $ \varphi(kp) = \varphi(p) \times k (k \in \Z)$
- $ \varphi(p^k) = p^k - p^{k-1}$
欧拉定理/费马小定理
- 若\(1 \perp n\)则有 :
\(a^{\varphi(n)} \equiv 1 \pmod{n}\)
\(a^{-1} \equiv a^{\varphi(n)-1} \pmod{n}\) - 在此基础上,若\(n\)为质数.
\(\because\) 有 \(\varphi(n) = n-1\)
\(\therefore a^{n-1} \equiv 1 \pmod n\)
即费马小定理
乘法逆元
定义
若满足 \(a \times a^{-1} \equiv 1 \pmod m\)
则称\(a^{-1}\)是\(a\)在模\(m\)意义下的逆元,注意这里\(a^{-1} \ne 1/a, a^{-1}\)表示的是\(a\)的逆元。
求解
\(\rm i.\) 若 \(m\) 是质数
\(\because a^{\varphi(m)} \equiv 1 \pmod m\)
\(\therefore a^{m-1} \equiv 1 \pmod m\)
又 \(\because a \times a^{-1} \equiv 1 \pmod m\)
\(\therefore a \times a^{-1} = a^{m-1}\)
\(\therefore a^{-1} = a^{m-2}\)
\(\rm ii.\) \(m\)不为质数
前置定理:裴蜀定理(Bézout's Identity)
定理陈述
设 \(a, b\) 为两个不全为零的整数,\(d = \gcd(a, b)\) 为它们的最大公约数,则存在整数 \(x, y\),使得:\[ax + by = d \]等价表述
两个整数 \(a, b\) 的线性组合 \(\{ax + by \mid x, y \in \mathbb{Z}\}\) 恰好构成 \(d = \gcd(a, b)\) 的所有倍数,即集合 \(d\mathbb{Z}\)。
重要推论
互素判定:整数 \(a, b\) 互素(即 \(\gcd(a, b) = 1\))的充分必要条件是存在整数 \(x, y\),使得:\[ax + by = 1 \]
由裴蜀定理对\(a \times x \equiv 1 \pmod p\) 的一般形式变形得:
之后套用扩展欧几里得求解二元一次不定方程即可
中国剩余定理
中国剩余定理可以求解同余方程组,如下例题:
Problem
《孙子算经》“有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”
Translate
形式化题意: 解方程组
Solution
本题考察中国剩余定理,此题解把此题作为例题,讲解如何解一般同余方程。
一般地,中国剩余定理可以求解如下方程组。
其中\(m_1,m_2,m_3 \cdots m_n\)两两互质。那么对于\(\forall a_1,a_2,a_3 \cdots a_n \in Z\),上面方程组有解。
那么对于题目来说\(a = \{2,3,2\} \quad m = \{3,5,7\}.\)
\(\rm i\)
设 \(M = m_1 \times m_2 \times \cdots \times m_n = \prod \limits_{i=1}^n m_i.\)
\(\rightarrow\)此题中\(M = m_1 \times m_2 \times m_3 = 3 \times 5 \times 7 = 105.\)
\(\rm ii\)
设 \(M_i = \frac{M}{m_i}_.\)
\(\rm iii\)
设 \(t_i = M_i^{-1}\)为\(M_i\)模\(m_i\)的逆元(易知\(M_i\)与\(m_i\)互质,因此定存在逆元)。
\(\rm iv\)
\(x\) 的通解为:
整理得:
那么对于此题,\(x = 2\times 2 \times 35 + 3 \times 1 \times 21 + 2 \times 1 \times 15 + 105k = 23 + 105k. k \in \mathbb{Z}.\)
浙公网安备 33010602011771号