其他分享
首页 > 其他分享> > 简单数论

简单数论

作者:互联网

定义

\(a|b\),则\(a=bk\)。
\(\forall\)对于任意。
\(\exists\)存在。
\(s.t.\)使得。
\(e.g.\)举个例子
\(\forall\)女生喜欢\(zcysky\)(光速逃
\(\gcd(a,b)\)或\((a,b)\)为\(a,b\)最大公约数。
若\((a,b)=1\),则称\(a\bot b\)
\(\gcd\)满足交换律,结合律,似乎可以用线段树维护。
\((ka,kb)=k(a,b)\)
\((a,a)=(0,a)=a\)
\((a,b)=(a,a+b)=(a,a+kb)=(a,b\bmod a)\)
定义域为整数的函数,叫数论函数
若\(\forall a,b\)有\(f(ab)=f(a)f(b)\)称\(f\)为完全积性函数。例\(f(a)=a,f(a)=1。\)
若\(\forall a\bot b\)有\(f(ab)=f(a)f(b)\)称\(f\)为积性函数。

简单数论

\(\gcd(a,b)=\gcd(a,b\bmod a)\)

int gcd(int a,int b){
  return b==0?a:gcd(b,a%b);
}

随机远远达不到这个上限。\(O(\log a+\log b)\)
同时一提,斐波拉契数列能把他卡到上限。

裴蜀定理。

\(\forall a,b,\exists s.t. ax+by=(a,b)\)

当\(b=0\)时,明显\(x=1,y=0\)。
\(ax+by=(a/b*\times b+a\bmod b)x+by=(a/b\times x+y)b+(a\bmod b)x\)

我们使用递归。

将\((a/b\times x+y)\)视作\(x\),\(b\)视作\(a\),\((a\bmod b)\)视作\(b\),\(x\)视作y。
则递归求解结束后,需要将\(y\)(带入时事\(x\))减去\(a/b\times x\)
我们叫这宣永和大法扩展欧几里得

void exgcd(int a,int b,int &x,int &y){
  if(b==0){x=1,y=0;return ;}
  exgcd(b,a%b,y,x);
  y-=a/b*x;
}

这也是\(O(\log a+\log b)\)的时间复杂度。
我们求出了一组解\(x_0,y_0\)。
设\(p_1=\displaystyle\frac{a}{(a,b)},p_2=\displaystyle\frac{b}{(a,b)}\)
其他的解为\(x=x_0+kp_2,y=y_0-kp_1\)
最小正整数\(x=(p_2+x\bmod p_2)\bmod p_2\)(其实就是取模。防止负数。括号内的可以消除负数;但是可能会大于\(p_2\)。所以再取一次模。)

欧拉函数。

暴力:

欧拉定理。

\(\forall a\bot n,a^{\phi(n)}\equiv 1(\bmod n)\)
扩展欧拉定理。
\(\forall a,n,a^{2\phi(n)}\equiv a^{\phi(n)}(\bmod n)\)

\(\forall a,n,b>\phi(n),a^b=a^{b\bmod \phi(n)+\phi(n)}(\bmod n)\)

快速幂

\(a^b\equiv a^{\frac{b}{2}^2}(\bmod p)\)
如果\(b\)为奇数,先乘以一个\(a\)。
光速幂。
给出\(a,c\)询问给出\(b\),求\(a^b\bmod c\)
根据\(\forall a,n,b>\phi(n),a^b=a^{b\bmod \phi(n)+\phi(n)}(\bmod n)\),可以把\(b\)降到\(2\phi(c)(<2c)\)以下。
\(a^b=a^{(\sqrt{c})^{b/\sqrt{(c)}}}\times a^{b\bmod\sqrt{c}}\)
原因:\(a^{(\sqrt{c})^{b/\sqrt{(c)}}}=a^{\sqrt{c}\times b/\sqrt{c}}\)
预处理\(a^{\sqrt{c}^i},a^j(i\leq2\sqrt{c},j\leq\sqrt(c))\)即可。

逆元

若\(ax\equiv 1(\bmod b)\),则称\(x\)为\(b\)关于\(p\)的逆元QAQ,记作\(a^{-1}\)。
\(a^{-1}\)存在条件事\((a,b)=1\)。
在\([0,b)\)的范围内\(a^{-1}\)是存在且唯一的。

求解逆元等价于求解\(ax+by=1\)的\(x\)的最小正整数解。(也说明了为什么\((a,b)\))
注:\(b\)为质数时,\(a^{-1}=a^{b-2}\)。可由欧拉定理说明。
有理数取模:\(\displaystyle\frac{a}{b}\equiv a\times b^{-1}(\bmod p)\)

线性筛逆元。
\(i^{-1}\equiv -p/i\times(p\bmod i)^{-1}(\bmod p)\)
证:

标签:phi,数论,bmod,sqrt,times,int,简单,forall
来源: https://www.cnblogs.com/kkksc0100/p/shulun.html