zoukankan      html  css  js  c++  java
  • 数论 难

    整除

    (p|q~,~p mid q)

    算术基本(唯一分解)定理 : (prod p_i^{c_i})

    prime

    埃氏筛O(nloglogn)&欧拉筛O(n)

    密度: (dfrac{x}{ln(x)})

    gcd & lcm

    (exists x,y s.t.ax+by=gcd(a,b))

    exgcd

    (left{ egin{array}{lrc} ax+by=gcd(a,b)\ bx'+(a\%b)y'=gcd(b,a\%b)\a\%b=a-b*lfloorfrac ab floor\gcd(a,b)=gcd(b,a\%b) end{array} ight.Rightarrowleft{egin{array}{lrc} x=y'\y=x'-y'lfloorfrac ab floor end{array} ight.)

    (ax+by=c~~Rightarrow~~a(x+b/g)+b(y-a/g)=c)

    同余

    (aequiv b~(mod~~m))

    (a^{-1}~:~a*a^{-1}equiv 1~(mod~~m))
    O(n) , 费马小定理 , exgcd

    CRT

    (left{egin{array}{cc}xequiv a_1~(mod~~m_1)\xequiv a_2~(mod~~m_2)\cdots\xequiv a_n~mod~~m_n)\end{array} ight.)

    普通

    (m_i)之间保证两两互质

    (x=sumlimits_{i=1}^nM_ia_it_i ~(mod~~M))

    ex

    (m_i)之间不保证两两互质

    考虑两个式子(left.egin{array}{cc}xequiv a_1(mod m_1)Leftrightarrow x=k_1m_1+a_1\x=a_2(mod m_2)Leftrightarrow x=k_2m_2+a_2end{array} ight}Rightarrow k_2m_2+(-k_1)m_1=(a_1-a_2))

    exgcd

    (x=k_1m_1+a_1pmod{lcm(m_1,m_2)}​)

    Lucas 定理

    普通

    (inom nmequivinom{n/p}{m/p} imesinom{n\%p}{m\%p}pmod p​)

    扩展

    首先

    (egin{cases}inom nmequiv a_1pmod{p_1^{k_1}}\inom nmequiv a_2pmod{p_2^{k_2}}\~~~~~~~~vdots\inom nmequiv a_cpmod{p_c^{k_c}}\end{cases})

    如当(p=3,k=2,n=19)

    (egin{split}n!=&1·2cdots19\=&(1·2·4·5·7·8·10·11·13·14·16·17)·(3·6·9·12·15·18)·19\=&(1·2·4·5·7·8·10·11·13·14·16·17)·3^6(1·2·3·4·5·6)·19end{split})

    可以递归进行计算。

    前面一部分是以(p^k)为周期的,所以只需要计算最后不满足一个周期的数是哪些就可以了

    欧拉函数

    (n)以内与(n)互质的数的个数

    (varphi(n)=nprodlimits_{i=1}^c(1-dfrac 1{p_i}))

    证明:exCRT式合并

    性质
    1. 欧拉定理:对于互质的$a,m,a^{varphi(m)} equiv 1 pmod m $
    2. 小于(n)且与(n)互质的数的和((nge2)):$S = n * dfrac{varphi(n)}{2} $
    3. (displaystylesum_{d|n} varphi(d) = n ​)

    原根

    (a,p)是整数,(gcd(a,p)=1),那么使(a^nequiv1(mod p))立的最小正整数(n)叫做(a)(p)的阶,记做(delta_p(a))

    原根

    (p)是正整数,(a)是整数,若(delta_p(a~mod~p))的阶等于(varphi(p)),则称(a)为模(p)的一个原根

    BSGS

    求解形如 (A^xequiv Bpmod C​) 的问题

    普通

    (C)是质数

    (m=lceilsqrt C ceil​),则(x=km-b​),即原式为(A^{km}equiv B*A^bpmod C​)

    我们对于每一个 (b),求出等式右边的值,并存入一个hash表中

    据欧拉定理,(x) 显然不超过 (m)

    复杂度(O(sqrt p))

    exBSGS

    (gcd(A,C)) 任意

    (d=gcd(A,C),A=a*d,B=b*d,C=c*d)

    注意若(d mid B)显然无解

    左右同时除以(d​),即(a*A^{x-1}equiv bpmod c​)

    递归,直到(d=1​)

    之后(BSGS)即可

    复杂度(O(sqrt nlog(n)))

    积性函数

    (displaystylevarphi(n)=n*prod_{i=1}^m(1-dfrac{1}{p_i})​)

    (displaystylesum_{d|n} mu(d) = [n=1])

    (id_k,epsilon,sigma_k)

    卷积

    (displaystyle f*g=sum_{d|n}f(d)g(dfrac{n}{d}))

    (mu*id_0=epsilon)

    (varphi*id_0=id_1)

    证明:

    (displaystyle{egin{aligned}&n\=&sum_{i=1}^nsum_{d|n}[gcd(i,n)=d]\=&sum_{d|n}sum_{i=1}^{frac nd}[gcd(i,frac nd)=1]\=&sum_{d|n}varphi(frac nd)\=&(id_0*varphi)(n)end{aligned}})

    筛积性函数

    Min_25:质因子分类

    反演

    (displaystyle{sum_{i=1}^nsum_{j=1}^n [gcd(i,j)==d]\sum_{i=1}^nsum_{j=1}^n gcd(i,j)\sum_{i=1}^nsum_{j=1}^m[gcd(i,j)in prime]\sum_{i=1}^nsum_{j=1}^m gcd(i,j)\sum_{i=1}^nsum_{j=1}^m lcm(i,j)\prod_{i=1}^nprod_{j=1}^m gcd(i,j)\prod_{i=1}^nprod_{j=1}^mdfrac{lcm(i,j)}{gcd(i,j)}\sum_{i=1}^nsum_{i=1}^mvarphi(ij)\sum_{i=1}^nsum_{j=1}^md(ij)\sum_{i=1}^Asum_{j=1}^Bsum_{k=1}^Cd(ijk)\prod_{i=1}^Aprod_{j=1}^Bprod_{k=1}^Cleft(egin{array}{cc}dfrac{lcm(i,j)}{gcd(i,k)}end{array} ight)^{f(type)}}​)

    群论

    给定一个集合(G={a,b,c,dots})和集合(G)上的二元运算,并满足:

    1. 封闭性:(forall a,bin G, exists cin G, a*b=c)

    2. 结合律:(forall a,b,cin G, (a*b)*c=a*(b*c))

    3. 单位元:(exists ein G,forall ain G,a*e=e*a=a)

    4. 逆元:(forall ain G,exists bin G, a*b=b*a=e,)(b=a^{-1})

    则称集合G在运算(*)之下是一个群,简称G是群。

    置换,置换群,循环
    (Z_k) ((K)不动置换类)

    (G)(1dots n)的置换群,若(K)(1dots n)中某个元素,(G)中使(K)保持不变的置换的全体,记以(Z_k),叫做(G)中使(K)保持不动的置换类

    (E_k)(等价类)

    (G​)(1dots n​)的置换群,(K​)(1dots n​)中某个元素,(K​)(G​)作用下的轨迹,记作(E_k​),即(K​)(G​)的作用下所能变化成的所有元素的集合

    轨道-稳定核定理:

    (|E_k|*|Z_k|=|G|)

    (Burnside)引理

    互异的组合状态的个数(displaystyle L=dfrac{1}{|G|}sum_{i=1}^{|G|}D(a_i)​)((D(a_i)​) 表示在置换(a_i​)下不变的元素的个数)

    (Pacute{o}lya)定理

    设G是p个对象的一个置换群,用m种颜色涂染p个对象,gi的循环节数为c(gi),则不同染色方案为(displaystyle L=dfrac{1}{|G|}sum_{i=1}^{|G|}m^{c_i}​)

    类欧几里德算法

    基础

    (displaystyle f(a,b,c,n)=sum_{i=0}^nlfloordfrac{ai+b}c floor​)

    1. (age c~~or~~bge c)

      (displaystyleegin{split}f(a,b,c,n)=&sum_{i=0}^nlfloordfrac{ai+b}c floor\=&sum_{i=0}^nlfloordfrac{(clfloordfrac ac floor+a\%c)i+(clfloordfrac bc floor+b\%c)}c floor\=&dfrac{n(n+1)}2lfloordfrac ac floor+(n+1)lfloordfrac bc floor+f(a\%c,b\%c,c,n)end{split})

    2. (a<c,b<c)

      (m=lfloorfrac{an+b}c floor),

      (displaystyleegin{split}f(a,b,c,n)=&sum_{i=0}^nlfloordfrac{ai+b}c floor\=&sum_{i=0}^nsum_{j=0}^{lfloorfrac{ai+b}c floor-1}1\=&sum_{j=0}^{m-1}sum_{i=0}^n[j<lfloorfrac{ai+b}c floor]end{split}\ j<lfloordfrac{ai+b}c floorLeftrightarrow j+1leqlfloordfrac{ai+b}c floorLeftrightarrow j+1<dfrac{ai+b}cLeftrightarrow jc+c-b-1<aiLeftrightarrowlfloordfrac{jc+c-b-1}a floor<i\ displaystyleegin{split}f(a,b,c,n)=&sum_{j=0}^{m-1}sum_{i=0}^n[j<lfloorfrac{ai+b}c floor]\=&sum_{j=0}^{m-1}sum_{i=0}^n[lfloordfrac{jc+c-b-1}a floor<i]\=&sum_{j=0}^{m-1}n-lfloordfrac{jc+c-b-1}a floor\=&nm-f(c,c-b-1,a,m-1)end{split}​)

      递归,(O(log n))

    扩展

    (displaystylesum_{i=0}^{n}{lfloor frac{ai+b}{c} floor}^2,sum_{i=0}^{n}ilfloor frac{ai+b}{c} floor)

    加油

    一般就是考虑转换条件,更改限制,递归进行

  • 相关阅读:
    ASP.NET中使用javascript
    遍历DataList控件
    史上最强劲之android模拟器命令详解
    Android开发环境配置简介
    Android模拟器adb命令介绍
    听一名普通android应用开发人员谈:怎样成为一名Android开发者
    android模拟器安装及优化(集锦)
    Ubuntu 快捷键集锦
    smplayer 中文字幕乱码,进度条及拖放MKV
    如何在Windows下搭建Android开发环境
  • 原文地址:https://www.cnblogs.com/zh-dou/p/13264733.html
Copyright © 2011-2022 走看看