秦皇岛wannafly[数论]学习笔记

费马小定理

$a^{p} equiv a mod p     a^{p-1} equiv 1 mod p $ 要求$p$是质数

欧拉公式

$a^{phi(n)} equiv 1 (mod n) $  要求$gcd(a,n)=1$

序列循环节

$A[i] = i*a mod n$

1.当a,n互质,循环节是n  0~a~(n-1)a 是n个不同的数字:证明:余数相同的两个数的差是n的倍数,ca是n的倍数,c小于n,a是n的倍数,an又是互质,矛盾。

2.循环节是$frac{n}{gcd(a,n)}$ 因为实际上是 $d*i(a'%n')$

3.$gcd(a,b)=d ; a mod b = da' mod d b'  = d(a' mod b') $算循环节要把最大公因数提出来

应用场景:$ax equiv b (mod n) , xin [l,r] $求方程解的个数

$gcd(a,n)=d$     $ax$ $mod$ $n$的值从x到0~n'-1遍历n'-1,其中b'$就是答案

$A[i] = a^i mod n$

1.a和n互质

会在$psi(n)$出现循环节:因为欧拉公式

2.不互质

是个混循环但是除开纯循环部分,剩下的序列个数很少在$log(n)$之间,所以当i比较小的时候就自己算,然后i大的时候可以除余$psi(n)$

判断一个序列是纯循环还是混循环

$对于A[i]能不能唯一的推出A[i-1],比如第一个数列 A[i-1]=(A[i]-a) mod n,第二个数列A[i-1]=A[i]*(a^{-1}) mod n,是纯循环,a有逆元就是纯循环,不然就是混循环$

对于上面第二个序列可以证明他的混循环部分不超过log(n):

  • $A_i =   A_{i+1}*a^{-1}$ mod n 当a,n不互质就没有逆元
  • 所以这里把gcd(a,n)提出来变成新的a,n  就可以$A_i =   A_{i+1}*a^{-1}$ mod n了

(a mod b)和b互质,则a和b互质

分解质因数

pollard_rho

用板子吧。。。$10^18$这种数据可以用这个分解,然后$10^10$这种的就用$frac{sqrt{n}}{logn}$就行了

板子:

欧拉函数

是一个积性函数所以用分解质因数就行

孙子定理/中国剩余定理

用逆元求解

$n  mod  m_i = a_i$

$(a_1,a_2,...,a_x)  leftrightarrow (0,m_1m_2..m_x)$ 一 一对应,其中$a_1,a_2...a_x$两两互质

  • $(1,1,1,1...1) leftrightarrow  1$ ; 
  • 如果$(a_1和m_1),(a_2和m_2)...(a_x和m_x)$互质,那$(a_1,a_2,...,a_x)$对应的数字也一定和$m_1m_2...m_x$互质
  • (证明:如果对应数字$n$与$m_k$不互质,那么$m_k$与$a_k$一定不互质,矛盾)
  • (应用:$psi(n)=prod_{i=1}^x psi(p_i^{k_i})$   )
  • $(0,m_1m_2..m_x) leftrightarrow ( (0,m_1),(0,m_2),(0,m_3),...,(0,m_x) )$ 
  • $(0,m_1m_2..m_x) longrightarrow ( (0,m_1),(0,m_2),(0,m_3),...,(0,m_x) )$ :直接用$k$ mod $m_1,...,m_x$
  • $(0,m_1m_2..m_x) longleftarrow ( (0,m_1),(0,m_2),(0,m_3),...,(0,m_x) )$ :中国剩余定理的过程
原文地址:https://www.cnblogs.com/jiecaoer/p/12942344.html