NOIp 數學知識點總結
推薦閱讀 NOIp 基礎數論知識點總結: https://www.cnblogs.com/greyqz/p/9473370.html
排列組合
常用公式
排列:\[\displaystyle A_n^m=\frac{n!}{(n-m)!}\]
全排列:\(A_n^n=n!\)
組合:\[\displaystyle C_n^m=\frac{A_n^m}{m!}=\frac{n!}{m!(n-m)!}\]
組合數的性質:
\[ \displaystyle C_n^m = C_n^{n-m} \]
\[ \displaystyle C_n^m= C_{n-1}^m+C_{n-1}^{m-1} \]
推導:\[ \displaystyle C_n^m = \frac{n!}{m!(n-m)!}= \frac{(n-1)!}{m!(n-m-1)!}\times\frac{n}{n-m}=\frac{(n-1)!}{m!(n-m-1)!}\times(1+\frac{m}{n-m})=C_{n-1}^{m}+\frac{(n-1)!}{(m-1)!(n-m)!}= C_{n-1}^m+C_{n-1}^{m-1} \]
\[ \displaystyle \sum_{i=0}^n C_n^i =\sum_{i=0}^nC_n^i1^{i}\cdot 1^{n-i}=(1 + 1)^n= 2^n \]
二項式定理:\[\displaystyle (a+b)^n=\sum_{i=0}^n C_n^i a^i b^{n-i}\]
\[ \displaystyle \sum_{i=0}^r C_{n+i}^i = C_{n+r+1}^r \]
\[ \displaystyle \sum_{i=0}^n i\cdot C_n^i =\sum_{i=1}^{n}n\cdot C_{n-1}^{i-1}=n\sum_{i=0}^{n-1}C_{n-1}^{i-1}= n2^{n-1} \]
\[ \displaystyle C_n^m\cdot C_m^r=C_n^r\cdot C_{n-r}^{m-r} \]
\[ \displaystyle C_n^0-C_n^1+C_n^2+\cdots +C_n^m=0 \]
組合數基本處理 \(O(n)\)
const int N = 1e5 + 7, MOD = 1e9 + 7; int add(int a, int b) { if ((a += b) >= MOD) a -= MOD; return a; } int mul(int a, int b) { return ll(a) * b % MOD; } int C(int a, int b) { return mul(jc[a], mul(ijc[a - b], ijc[b])); } int qpow(int a, int b) { int r = 1; for (; b; b >>= 1) { if (b & 1) r = mul(r, a); a = mul(a, a); } return a; } int jc[N], ijc[N]; void ini() { jc[0] = 1; for (int i = 1; i < N; i++) jc[i] = mul(jc[i - 1], i); ijc[N - 1] = qpow(jc[N - 1], MOD - 2); for (int i = N - 2; i >= 0; i--) ijc[i] = mul(ijc[i + 1], i + 1); }
數學規律
Catalan 數
\[\operatorname{Catalan}(n)=\displaystyle\frac{C_{2n}^n}{n+1}\]
1, 1, 2, 5, 14, 42, 132, ...
以下問題屬於 Catalan 數:
- 有 \(2n\) 個人排成一行進入劇場。入場費 5 元。其中只有\(n\)個人有一張 5 元鈔票,另外 \(n\) 人只有 10 元鈔票,劇院無其它鈔票,問有多少中方法使得只要有 10 元的人買票,售票處就有 5 元的鈔票找零?
- 一位大城市的律師在她住所以北 \(n\) 個街區和以東 \(n\) 個街區處工作。每天她走 \(2n\) 個街區去上班。如果他從不穿越(但可以碰到)從家到辦公室的對角線,那麽有多少條可能的道路?
- 在圓上選擇 \(2n\) 個點, 將這些點成對連接起來使得所得到的 \(n\) 條線段不相交的方法數?
- 對角線不相交的情況下,將一個凸多邊形區域分成三角形區域的方法數?
- 一個棧 (無窮大) 的進棧序列為 \(1,2,3, \ldots ,n\) 有多少個不同的出棧序列?
- \(n\) 個結點可夠造多少個不同的二叉樹?
- \(n\) 個不同的數依次進棧,求不同的出棧結果的種數?
- \(n\) 個 \(+1\) 和 \(n\) 個 \(-1\) 構成 \(2n\) 項 \(a_1,a_2, \ldots ,a_{2n}\),其部分和滿足 \(a_1+a_2+ \cdots +a_k\ge 0(k=1,2,3, \ldots ,2n)\),該數列為?
Stirling 數
(2007 普及)將 \(n\) 個數 \(1,2,\ldots,n\) 分成 \(r\) 個部分。每個部分至少一個數。將不同劃分方法的總數記為 \(S_n^r\)。例如,\(S_4^2=7\),這 7 種不同的劃分方法依次為 \(\{(1) , (234) \},\{(2) , (134) \},\{(3) , (124) \},\{ (4) , (123) \},\{ (12) , (34) \},\{ (13) , (24) \},\{ (14) , (23) \}\)。當 \(n=6,r=3\) 時,\(S_6^3=\)( )
\[ S_n^m = m S_{n-1}^{m} + S_{n-1}^{m-1} \]
\[ S_n^1 = 1,S_n^0 = 0,S_n^n = 1 \]
NOIp 數學知識點總結