1. 程式人生 > 實用技巧 >【專題總結】數學(未完)

【專題總結】數學(未完)

【專題總結】數學(未完)

前言

老年人的一些整理。。(複習用)

完全剩餘系

1.從模 \(n\) 的每個剩餘類中各取一個數,得到一個由 \(n\) 個數組成的集合,叫做模 \(n\) 的一個完全剩餘系。完全剩餘系常用於數論中存在性證明。
2.對於 \(n\) 個整數,其構成模n的完系等價於其關於模 \(n\) 兩兩不同餘
3.若 \(a_i(1\leq i\leq n)\) 構成模 \(n\) 的完系,\(k,m\in Z\) , \((n,m)=1\) ,則 \(k+m\cdot a_i\) 也構成完系。【NOIP2017】小凱的疑惑
4.若 \(a_i(1\leq i\leq n)\) 構成模 \(n\)

的完系,則 \(\sum_{i=1}^{n}a_i\)

快速冪

code

LL qpow(LL x,LL y,LL P){
	LL re=1;
	while(y){
		if(y&1) re=re*x%P;
		x=x*x%P;y>>=1;
	}
	return re%P;
} 

素數定理

1.設 \(x>0\) ,以 \(\pi(x)\) 表示不超過 \(x\) 的素數個數,當 \(x \rightarrow +\infty\) 時,\(\pi(x) \rightarrow Li(x)\)\(\pi(x) \rightarrow \frac{x}{ln(x)}\)


2.各範圍素數數量

威爾遜定理

  1. \((p-1)!\) \(\equiv\) \(p-1\) \((mod\) \(p)\) ( \(p\) 是質數)

線性篩

1.效率是 \(O(n)\) 的,並且每個合數只會被其最小的質因數篩到。

code

bool is_pri[N+10];
int pri[N],cntp=0;
void init_pri(){
	for(int i=2;i<=N;++i){
		if(!is_pri[i]) {
			pri[++cntp]=i;
		}
		for(int j=1;j<=cntp&&pri[j]*i<=N;++j){
			is_pri[pri[j]*i]=1;
			if(i%pri[j]==0) {
				break;
			}
		}
	}
}

乘法逆元

1.線性求逆元:令 \(p=k*i+r\) \((p是質數,k=\lfloor \frac{p}{i} \rfloor)\) ,顯然 \(k*i+r\equiv0(mod\) \(p)\) , 移項得 \(i^{-1}\equiv(-k)\cdot r^{-1}(mod\) \(p)\)

code

LL inv[N+10];
void init_inv(){
	inv[0]=inv[1]=1;
	for(LL i=2;i<=N;++i) inv[i]=(P-P/i)*inv[P%i]%P;
} 

2.快速冪求逆元:由費馬小定理 \(a^{p-1}\equiv1(mod\) \(p)\) ,得 \(a^{p-2}\equiv a^{-1}(mod\) \(p)\)
3.擴充套件歐幾里得求逆元。(感覺沒什麼用啊。。)

排列組合(部分公式)

1.\({n \choose m}\) \(=\) \(\frac {n!}{m!(n-m)!}\)

2.\({n \choose m}\) \(=\) \({n-1 \choose m-1}\) + \({n-1 \choose m}\)

3.\(\sum_{i=0}^{n}{n \choose i}\) \(=\) \(2^{n}\)

4.\(\sum_{i}{n \choose i}{m \choose k-i}\) \(=\) \({n+m \choose k}\)\(n\) 箇中選 \(i\) 個,再在另外 \(m\) 箇中選剩餘 \(k-i\) 個,每種 \(i\) 的情況加起來,相當於是在 \(n+m\) 中選 \(k\) 個。

5.\(\sum_{i}{i \choose k}{n-i \choose m-k}\) \(=\) \({n+1 \choose m+1}\) 相當於在 \(n+1\) 箇中取 \(m+1\) 個,然後對於每個 \(i\) 就對應著將選出的第 \(k+1\) 個點當做分割點後得到的方案。

6.李善蘭恆等式(感覺沒什麼用。。)

一些比賽遇到的奇怪式子

1.\(y^{d(y)}\) \(=\) \(\prod_{t|y} y\) \(=\) \(\prod_{t|y} t \cdot \frac{y}{t}\) \(=\) \(\prod_{t|y} t^{2}\)