文章目录

  • 前言
  • 内容
    • 素数
      • 关于素数无限个的证明
        • n以内的素数个数
      • 算术基本定理
    • 约数
        • 一个数的正约数个数(约数个数定理)
        • 一个数的正约数和(约数和定理)
        • 最大公约数和最小公倍数
      • gcd(a,b) * lcm(a,b)= a * b的证明
        • 更相减损术
        • 欧几里得算法
    • 欧拉函数
      • 积性函数
      • 一些性质
    • 同余
        • 一些性质
        • 欧拉定理
        • 费马小定理
        • 贝祖定理(裴蜀定理)
          • 代码
          • 求通解
      • a x + b y = n ax+by = n ax+by=n方程的主要解题步骤
        • 线性同余方程
        • 乘法逆元
        • 线性求逆元
        • 中国剩余定理(孙子定理)(crt)
          • 板子

前言

听了一下午数论之后的反应?
别问,问就是懵逼
然后打算把自己没记多少的笔记整理一下


内容

素数

关于素数无限个的证明

设当前有限个素数为
P 1 , P 2 , P 3 . . . P m P_1, P_2, P_3 ... P_m P1​,P2​,P3​...Pm​
那我们将它乘起来,再加上一个1, 即
∏ i = 1 m P i + 1 \prod_{i = 1}^{m}P_i + 1 i=1∏m​Pi​+1
那么这得到的新的数字就无法被之前得到的m个素数整除(毕竟最小的素数也是 2 2 2),也就是说这个新得到的数字是一个素数,也就与前面的只有m个素数的结论相矛盾
故证得素数有无限个

n以内的素数个数

n u m = n ln(x) num = \frac{n}{\text{ln(x)}} num=ln(x)n​

算术基本定理

任意一个大于1的正整数都能拆分成若干个素数的乘积
N = P 1 c 1 × P 2 c 2 … P m c m ( N > 1 ) N = P_1^{c_1} \times P_2^{c_2} … P_m^{c_m}(N>1) N=P1c1​​×P2c2​​…Pmcm​​(N>1)


约数

一个数的正约数个数(约数个数定理)

∏ i = 1 m ( c i + 1 ) \prod_{i = 1}^{m}(c_i + 1) i=1∏m​(ci​+1)

一个数的正约数和(约数和定理)

∏ i = 1 m ( ∑ j = 0 c i ( P i ) j ) \prod_{i = 1}^{m}\left(\sum_{j = 0}^{c_i}(P_i)^j\right) i=1∏m​(j=0∑ci​​(Pi​)j)

最大公约数和最小公倍数

用 g c d ( a , b ) 表 示 a , b 的 最 大 公 约 数 , 用 l c m ( a , b ) 表 示 a , b 的 最 小 公 倍 数 gcd(a, b)表示a,b的最大公约数,用lcm(a,b)表示a,b的最小公倍数 gcd(a,b)表示a,b的最大公约数,用lcm(a,b)表示a,b的最小公倍数

gcd(a,b) * lcm(a,b)= a * b的证明

设 d = g c d ( a , b ) , e = l c m ( a , b ) , a 0 = a / d , b 0 = b / d d = gcd(a, b), e = lcm(a,b), a_0 = a / d, b_0 = b / d d=gcd(a,b),e=lcm(a,b),a0​=a/d,b0​=b/d,根据最大公约数的定义,有 g c d ( a 0 , b 0 ) = 1 gcd(a_0, b_0) = 1 gcd(a0​,b0​)=1, 再根据最小公倍数的定义,有 l c m ( a 0 , b 0 ) = a 0 × b 0 lcm(a_0,b_0) = a_0 \times b_0 lcm(a0​,b0​)=a0​×b0​
则 e = l c m ( a 0 ∗ d , b 0 ∗ d ) = l c m ( a 0 , b 0 ) ∗ d = a 0 ∗ b 0 ∗ d = a ∗ b / d e = lcm(a_0 * d, b_0 * d) = lcm(a_0, b_0) * d = a_0 * b_0 * d = a * b / d e=lcm(a0​∗d,b0​∗d)=lcm(a0​,b0​)∗d=a0​∗b0​∗d=a∗b/d
证毕

更相减损术

g c d ( a , b ) = g c d ( b , a − b ) = g c d ( a , a − b ) ( a ≥ b ) gcd(a,b) = gcd(b, a-b) = gcd(a, a - b)(a \geq b) gcd(a,b)=gcd(b,a−b)=gcd(a,a−b)(a≥b)

欧几里得算法

g c d ( a , b ) = g c d ( b , a m o d b ) gcd(a,b) = gcd(b, a\ \ mod\ \ b) gcd(a,b)=gcd(b,a  mod  b)


欧拉函数

表示1~N中与N互质的数的个数,记作 φ ( N ) \varphi(N) φ(N)
设P为不大于n的若干个素数
在算数基本定理中
n = P 1 c 1 × P 2 c 2 × . . . × P m c m n = P_1^{c_1} \times P_2^{c_2} \times ... \times P_m^{c_m} n=P1c1​​×P2c2​​×...×Pmcm​​
φ ( n ) = n × P 1 − 1 P 1 × P 2 − 1 P 2 … P m − 1 P m \varphi(n) = n \times \frac{P_1 - 1}{P_1} \times \frac{P_2 - 1}{P_2}…\frac{P_m - 1}{P_m} φ(n)=n×P1​P1​−1​×P2​P2​−1​…Pm​Pm​−1​
整理一下可得
n × ∏ 质 数 P ∣ N ( 1 − 1 P ) n \times \prod_{质数P|N}(1 - \frac{1}{P}) n×质数P∣N∏​(1−P1​)
证明:
用容斥原理
我们不妨设 p p p为n的一个质因数,那么1~n中 p p p的倍数共有 p p p, 2 p 2p 2p, 3 p 3p 3p…共有 n / p n/p n/p个;
再设一个 q q q,也是n的一个质因数,那么共有 n / q n/q n/q个q的倍数;
那么我们要除去 q q q的倍数和 p p p的倍数,但这样又会重复减去 p q pq pq的倍数,所以还要加回来
即 n − n p − n q + n p q n - \frac{n}{p} - \frac{n}{q} + \frac{n}{pq} n−pn​−qn​+pqn​
此式可化为 n ∗ ( 1 − 1 p − 1 q + 1 p q ) n * (1 - \frac{1}{p} - \frac{1}{q} + \frac{1}{pq}) n∗(1−p1​−q1​+pq1​)
最后可以化为 n ( 1 − 1 p ) ( 1 − 1 q ) n(1 - \frac{1}{p})(1 - \frac{1}{q}) n(1−p1​)(1−q1​)
那这个可以一般化到所有n的质因数,就能得到上式
证毕.

积性函数

当a与b互质时,若有 f ( a b ) = f ( a ) × f ( b ) f(ab) = f(a) \times f(b) f(ab)=f(a)×f(b),称函数 f f f为积性函数

一些性质

1.当 n > 1 n>1 n>1时 1~n中与n互质的数的和为 n × φ ( n ) 2 \frac{n \times \varphi(n)}{2} 2n×φ(n)​
2.若 a , b a,b a,b互质,则有 φ ( a b ) = φ ( a ) φ ( b ) \varphi(ab) = \varphi(a)\varphi(b) φ(ab)=φ(a)φ(b)
3.若 f f f是积性函数,且在算数基本定理中 f ( n ) = ∏ i = 1 m f ( p i c j ) f(n) = \prod_{i = 1}^{m}f(p_i^{c_j}) f(n)=∏i=1m​f(picj​​)
4.设 p p p为质数,若 p ∣ n p|n p∣n且 p 2 ∣ n p^2|n p2∣n,则 φ ( n ) = φ ( n / p ) × p \varphi(n) = \varphi(n / p) \times p φ(n)=φ(n/p)×p
5.设 p p p为质数,若 p ∣ n p|n p∣n且 p 2 ∤ n p^2∤n p2∤n,则 φ ( n ) = φ ( n / p ) × ( p − 1 ) \varphi(n) = \varphi(n/p) \times (p - 1) φ(n)=φ(n/p)×(p−1)
6. ∑ d ∣ n φ ( d ) = n \sum_{d|n}\varphi(d) = n ∑d∣n​φ(d)=n

这里只是将这些性质简单整理了一下,具体证明可以上网查询,这里就不给出证明了(主要是博主太菜了不会证


同余

a ≡ b ( m o d m ) a \equiv b(mod\ m) a≡b(mod m), 当且仅当 m ∣ ( a − b ) m|(a - b) m∣(a−b)
证明:
设 a = k 1 m + r 1 a = k_1m + r_1 a=k1​m+r1​
设 b = k 2 m + r 2 b = k_2m + r_2 b=k2​m+r2​
使得 r 1 = = r 2 r_1 == r_2 r1​==r2​
则 a − b = k 1 m + r 1 − k 2 m − r 2 = ( k 1 − k 2 ) m a - b = k_1m + r_1 - k_2m - r_2 = (k_1 - k_2)m a−b=k1​m+r1​−k2​m−r2​=(k1​−k2​)m
故得 m ∣ ( a − b ) m|(a-b) m∣(a−b)

一些性质

1.自反性 a ≡ b ( m o d m ) ⇒ a ≡ b ( m o d m ) a \equiv b(mod\ m) \Rightarrow a\equiv b(mod\ m) a≡b(mod m)⇒a≡b(mod m)
2.对称性 a ≡ b ( m o d m ) ⇒ b ≡ a ( m o d m ) a \equiv b(mod\ m)\Rightarrow b\equiv a(mod\ m) a≡b(mod m)⇒b≡a(mod m)
3.传递性 a ≡ b ( m o d m ) , b ≡ c ( m o d m ) ⇒ a ≡ c ( m o d m ) a \equiv b(mod\ m), b \equiv c(mod\ m) \Rightarrow a \equiv c(mod\ m) a≡b(mod m),b≡c(mod m)⇒a≡c(mod m)
4.同加性 a ≡ b ( m o d m ) ⇒ a + c a \equiv b(mod\ m) \Rightarrow a + c a≡b(mod m)⇒a+c
5.同乘性 a ≡ b ( m o d m ) ⇒ a ∗ c ≡ b ∗ c ( m o d m ) a \equiv b(mod\ m) \Rightarrow a * c \equiv b * c(mod\ m) a≡b(mod m)⇒a∗c≡b∗c(mod m)
6.同幂性 a ≡ b ( m o d m ) ⇒ a n ≡ b n ( m o d m ) a \equiv b(mod\ m) \Rightarrow a ^ n \equiv b ^ n(mod\ m) a≡b(mod m)⇒an≡bn(mod m)
7.若 a m o d p = x , a m o d q = x a\ mod\ p = x, a\ mod\ q = x a mod p=x,a mod q=x(p, q互质), 则 a m o d p q = x a\ mod\ pq = x a mod pq=x

欧拉定理

若正整数a, n互质,则 a φ ( n ) ≡ 1 ( m o d n ) a^{\varphi(n)} \equiv 1(mod\ n) aφ(n)≡1(mod n)
证明:
设 S 1 = r 1 , r 2 , r 3 . . . r φ ( n ) S_1 = {r_1, r_2, r_3...r_{\varphi(n)}} S1​=r1​,r2​,r3​...rφ(n)​, 这个集合内都是mod n的既约剩余系
将 S 1 ∗ a S_1*a S1​∗a得
S 2 = a r 1 , a r 2 , a r 3 . . . a r φ ( n ) S_2 = {ar_1, ar_2, ar_3...ar_{\varphi(n)}} S2​=ar1​,ar2​,ar3​...arφ(n)​, 也是mod n的既约剩余系
则可得 ∏ i = 1 φ ( n ) a r i ≡ ∏ i = 1 φ ( n ) r i ( m o d n ) \prod_{i =1}^{\varphi(n)}ar_i \equiv \prod_{i = 1}^{\varphi(n)}r_i(mod\ n) i=1∏φ(n)​ari​≡i=1∏φ(n)​ri​(mod n)
提出a可得
a φ ( n ) ∏ i = 1 φ ( n ) r i ≡ ∏ i = 1 φ ( n ) r i ( m o d n ) a^{\varphi(n)}\prod_{i = 1}^{\varphi(n)}r_i \equiv \prod_{i = 1}^{\varphi(n)}r_i(mod\ n) aφ(n)i=1∏φ(n)​ri​≡i=1∏φ(n)​ri​(mod n)
上式可化为
n ∣ ( a φ ( n ) ∏ i = 1 φ ( n ) r i − ∏ i = 1 φ ( n ) r i ) n|(a^{\varphi(n)}\prod_{i = 1}^{\varphi(n)}r_i - \prod_{i = 1}^{\varphi(n)}r_i) n∣(aφ(n)i=1∏φ(n)​ri​−i=1∏φ(n)​ri​)
乘法分配律逆运算
n ∣ ( a φ ( n ) − 1 ) ∏ i = 1 φ ( n ) r i n|(a^{\varphi(n)} - 1)\prod_{i = 1}^{\varphi(n)}r_i n∣(aφ(n)−1)i=1∏φ(n)​ri​
因为 ∏ i = 1 φ ( n ) r i \prod_{i = 1}^{\varphi(n)}r_i ∏i=1φ(n)​ri​与 n n n互质( g c d ( ∏ i = 1 φ ( n ) r i , n ) = 1 gcd(\prod_{i = 1}^{\varphi(n)}r_i, n) = 1 gcd(∏i=1φ(n)​ri​,n)=1)
则可以得到
n ∣ ( a φ ( n ) − 1 ) n|(a^{\varphi(n)} - 1) n∣(aφ(n)−1)
由 a ≡ b ( m o d m ) = m ∣ ( a − b ) a \equiv b(mod\ m) = m|(a - b) a≡b(mod m)=m∣(a−b)得
a φ ( n ) ≡ 1 ( m o d n ) a^{\varphi(n)} \equiv 1(mod\ n) aφ(n)≡1(mod n)
证毕.

费马小定理

若p是质数,则对于任意整数 a a a, 有 a p ≡ a ( m o d p ) a^p \equiv a(mod\ p) ap≡a(mod p)
证明:
分类讨论
1. g c d ( a , p ) = 1 ⇒ a φ ( p ) ≡ 1 ( m o d p ) ⇒ a p − 1 ≡ 1 ( m o d p ) ⇒ a p ≡ a ( m o d p ) gcd(a, p) = 1 \Rightarrow a^{\varphi(p)} \equiv 1(mod\ p) \Rightarrow a^{p - 1} \equiv 1(mod\ p) \Rightarrow a^p \equiv a(mod\ p) gcd(a,p)=1⇒aφ(p)≡1(mod p)⇒ap−1≡1(mod p)⇒ap≡a(mod p)
2. g c d ( a , p ) ≠ 1 ⇒ a 是 p 的 倍 数 , 则 a m o d p = a p m o d p = 0 gcd(a, p) \neq 1 \Rightarrow a是p的倍数, 则a\ mod\ p = a^p\ mod\ p = 0 gcd(a,p)​=1⇒a是p的倍数,则a mod p=ap mod p=0
证毕.

贝祖定理(裴蜀定理)

当 g c d ( a , b ) ∣ m gcd(a,b)|m gcd(a,b)∣m时, 一定存在一组解使得 a x + b y = g c d ( a , b ) ax +by = gcd(a, b) ax+by=gcd(a,b)成立
设 d = g c d ( a , b ) d = gcd(a, b) d=gcd(a,b),则 a = d a ′ , b = d b ′ , a x + b y = ( d a ′ x + d b ′ y ) = d ( a ′ x + b ′ y ) a = da', b = db', ax+by = (da'x + db'y) = d(a'x + b'y) a=da′,b=db′,ax+by=(da′x+db′y)=d(a′x+b′y)
1.当 b = 0 b = 0 b=0时,有一对 x = 1 , y = 0 x = 1, y = 0 x=1,y=0满足 a + 0 = g c d ( a , 0 ) = a a + 0 = gcd(a, 0) = a a+0=gcd(a,0)=a
2.当 b ≠ 0 b\neq0 b​=0时
g c d ( a , b ) = g c d ( b , a m o d b ) gcd(a, b) = gcd(b, a\ mod\ b) gcd(a,b)=gcd(b,a mod b)
则 a x + b y = b x ′ + ( a m o d b ) y ′ ax + by = bx' + (a\ mod\ b)y' ax+by=bx′+(a mod b)y′
= b x ′ + ( a − ⌊ a b ⌋ ∗ b ) y ′ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =bx' + (a - \left \lfloor \frac{a}{b} \right \rfloor *b)y'                   =bx′+(a−⌊ba​⌋∗b)y′
= a y ′ + b ( x ′ − ⌊ a b ⌋ y ′ ) \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =ay' + b(x' - \left \lfloor \frac{a}{b} \right \rfloor y')                   =ay′+b(x′−⌊ba​⌋y′)
只要我们令 x = y ′ , y = x ′ − ⌊ a b ⌋ y ′ x = y', y = x' - \left \lfloor \frac{a}{b} \right \rfloor y' x=y′,y=x′−⌊ba​⌋y′就能求解了

例: 12 x + 15 y = g c d ( 12 , 15 ) = 3 12x + 15y = gcd(12, 15) = 3 12x+15y=gcd(12,15)=3
解:
g c d ( 12 , 15 ) ⇒ g c d ( 15 , 12 ) ⇒ g c d ( 12 , 3 ) ⇒ g c d ( 3 , 0 ) gcd(12, 15) \Rightarrow gcd(15, 12) \Rightarrow gcd(12, 3) \Rightarrow gcd(3, 0) gcd(12,15)⇒gcd(15,12)⇒gcd(12,3)⇒gcd(3,0)
那我们令 x = y ′ , y = x ′ − ⌊ a b ⌋ y ′ x = y', y = x' - \left \lfloor \frac{a}{b} \right \rfloor y' x=y′,y=x′−⌊ba​⌋y′
即 x = 1 , y = 0 x = 1, y = 0 x=1,y=0
往上推到 12 , 3 的 组 , 那 x = 0 , y = 1 − ⌊ 12 3 ⌋ ∗ 0 = 1 12, 3的组,那x = 0, y = 1 - \left \lfloor \frac{12}{3} \right \rfloor * 0 = 1 12,3的组,那x=0,y=1−⌊312​⌋∗0=1
再往上推,那 x = 1 , y = 0 − ⌊ 15 12 ⌋ ∗ 1 = − 1 x = 1, y = 0 - \left \lfloor \frac{15}{12} \right \rfloor * 1 = -1 x=1,y=0−⌊1215​⌋∗1=−1
最后推到 x = − 1 , y = 1 − ⌊ 12 15 ⌋ ∗ 1 = 1 − 0 = 1 x = -1, y = 1 - \left \lfloor \frac{12}{15} \right \rfloor * 1 = 1 - 0 = 1 x=−1,y=1−⌊1512​⌋∗1=1−0=1
经检验(-12+15 = 3),也是正确的

代码
ll exgcd(ll a, ll b, ll &x, ll &y)
{if(b == 0) {x = 1; y = 0;return a;}gcd = exgcd(b, a % b, x, y);ll z = x;x = y; y = z - y * (a / b);return gcd;
}
求通解

设 x 0 , y 0 x_0, y_0 x0​,y0​为 a x + b y = g c d ( a , b ) ax+by = gcd(a, b) ax+by=gcd(a,b)的一组特解
a ( x 0 + k 1 ) + b ( y 0 + k 2 ) = g c d ( a , b ) a(x_0 + k_1) + b(y_0 + k_2) = gcd(a, b) a(x0​+k1​)+b(y0​+k2​)=gcd(a,b)
a x 0 + a k 1 + b y 0 − b k 2 = g c d ( a , b ) ax_0 + ak_1+ by_0 -bk_2 = gcd(a, b) ax0​+ak1​+by0​−bk2​=gcd(a,b)
只要让 k 0 = b g c d ( a , b ) , k 2 = a g c d ( a , b ) k_0 = \frac{b}{gcd(a,b)}, k_2 = \frac{a}{gcd(a,b)} k0​=gcd(a,b)b​,k2​=gcd(a,b)a​
则等式就是成立的
x = x 0 + b g c d ( a , b ) ∗ t , y = y 0 + a g c d ( a , b ) ∗ t x = x_0 + \frac{b}{gcd(a, b)} * t, y = y_0 + \frac{a}{gcd(a,b)}*t x=x0​+gcd(a,b)b​∗t,y=y0​+gcd(a,b)a​∗t

a x + b y = n ax+by = n ax+by=n方程的主要解题步骤

1. g c d ( a , b ) ∣ n ⇒ gcd(a,b)|n \Rightarrow gcd(a,b)∣n⇒ 有整数解
2.用贝祖定理求 a x + b y = g c d ( a , b ) ⇒ x 0 , y 0 ax+by= gcd(a, b) \Rightarrow\ x_0, y_0 ax+by=gcd(a,b)⇒ x0​,y0​
3.同乘 n g c d ( a , b ) \frac{n}{gcd(a, b)} gcd(a,b)n​得到特解

线性同余方程

a x ≡ b ( m o d m ) ax \equiv b(mod\ m) ax≡b(mod m)
不会做???
转换成会做的不就好了
由上式可得 m ∣ ( a x − b ) m|(ax - b) m∣(ax−b)
也就是说 m y = a x − b my = ax - b my=ax−b
移项可得
a x − m y = b ax - my = b ax−my=b
当 g c d ( a , m ) ∣ b gcd(a, m)|b gcd(a,m)∣b时,方程有解,用贝祖定理就好了

乘法逆元

b , m b ,m b,m互质, 并且 b ∣ a b|a b∣a, 若有x满足
a b ≡ a x ( m o d m ) \frac{a}{b} \equiv ax(mod\ m) ba​≡ax(mod m)
称x为b的 m o d m mod\ m mod m的乘法逆元, 记为 b − 1 ( m o d m ) b^{-1}(mod\ m) b−1(mod m)(并非-1次方)
∵ a / b ≡ a b − 1 ( m o d m ) ∵a / b \equiv ab^{-1}(mod\ m) ∵a/b≡ab−1(mod m)
∴ b ∗ b − 1 ≡ 1 ( m o d m ) ∴b*b^{-1} \equiv1 (mod\ m) ∴b∗b−1≡1(mod m)(两边同乘 b a \frac{b}{a} ab​)
∴ b x ≡ 1 ( m o d m ) ∴bx \equiv 1(mod\ m) ∴bx≡1(mod m)(线性同余方程)
若m为质数,并且b<m, 则 b m − 1 ≡ 1 ( m o d m ) b^{m-1} \equiv 1(mod\ m) bm−1≡1(mod m)(小费马
则 x = b m − 2 x = b^{m-2} x=bm−2

线性求逆元

求出 1 − n 1 - n 1−n的所有数的逆元
枚举 i i i
首先 1 − 1 ≡ 1 ( m o d p ) 1^{-1} \equiv 1(mod\ p) 1−1≡1(mod p)
当 i < p i < p i<p时,设 p = k i + r p = ki + r p=ki+r( k = ⌊ p i ⌋ , r = p m o d i k =\left\lfloor \frac{p}{i} \right\rfloor, r = p\ mod\ i k=⌊ip​⌋,r=p mod i )
∵ p m o d p = 0 p\ mod\ p = 0 p mod p=0
∴ ( k i + r ) m o d p = 0 (ki+r)\ mod\ p = 0 (ki+r) mod p=0
则有 k i + r ≡ 0 ( m o d p ) ki + r \equiv 0(mod\ p) ki+r≡0(mod p)
两边同乘 i − 1 i^{-1} i−1
则有 k + r i i − 1 ≡ 0 ( m o d p ) k + ri^{i-1} \equiv 0(mod\ p) k+rii−1≡0(mod p)
∴ r i − 1 ≡ − k ( m o d p ) ∴ri^{-1} \equiv -k(mod\ p) ∴ri−1≡−k(mod p)
∴ i − 1 ≡ − k r − 1 ∴i^{-1} \equiv -kr^{-1} ∴i−1≡−kr−1
又 ∵ k = ⌊ p i ⌋ ∵k =\left\lfloor \frac{p}{i} \right\rfloor ∵k=⌊ip​⌋, r = r = r= p p p % i i i
则有 i − 1 ≡ − ⌊ p i ⌋ ⋅ ( p i^{-1} \equiv -\left\lfloor \frac{p}{i} \right\rfloor \cdot (p i−1≡−⌊ip​⌋⋅(p % i ) − 1 ( m o d m ) i)^{-1}(mod\ m) i)−1(mod m)
那很显然 ( p (p (p % i ) i) i)是小于i的
那可以根据前面的式子推, 代码就是

A[i]=-(p/i)*A[p%i];

应该还是比较容易懂的(虽然我这彩笔听的时候懵死了,但是下来看几下还是可以懂得

中国剩余定理(孙子定理)(crt)

求线性同余方程组?(大概)
其实我想单独写一篇文章(先咕着,不一定补
这里简单提一下
设 m 1 , m 2 , m 3 . . . m r m_1,m_2, m_3...m_r m1​,m2​,m3​...mr​为两两互质的整数,且 m = m 1 m 2 . . . m r m =m_1m_2...m_r m=m1​m2​...mr​, 则同余方程组
设 m = ∏ i = 1 n m i , M i = m / m i , t i m = \prod_{i = 1}^{n}m_i, M_i = m / m_i, t_i m=∏i=1n​mi​,Mi​=m/mi​,ti​是线性同余方程 M i t i ≡ 1 ( m o d m i ) M_it_i \equiv 1(mod\ m_i) Mi​ti​≡1(mod mi​)的一个解

{ x ≡ b 1 ( m o d m 1 ) ) x ≡ b 2 ( m o d m 2 ) . . . x ≡ b 3 ( m o d m 3 ) ) \left\{\begin{matrix} x \equiv b_1(mod\ m_1))\\ x \equiv b_2(mod\ m_2)\\ ...\\ x \equiv b_3(mod\ m_3))\\ \end{matrix}\right. ⎩⎪⎪⎨⎪⎪⎧​x≡b1​(mod m1​))x≡b2​(mod m2​)...x≡b3​(mod m3​))​
有整数解,解为 x = ∑ i = 1 n a i M i t i x = \sum_{i = 1}^{n}a_iM_it_i x=∑i=1n​ai​Mi​ti​
解:
设 k = t i k = t_i k=ti​
x i = m / m i x_i = m / m_i xi​=m/mi​(因为 M i % m i = a i M_i \% m_i = a_i Mi​%mi​=ai​)
x i = M i k % m i = a i x_i = M_ik \% m_i = a_i xi​=Mi​k%mi​=ai​
则有 M i k ≡ a i ( m o d m i ) M_ik \equiv a_i(mod\ m_i) Mi​k≡ai​(mod mi​)
设 q q q为 M i % m i M_i \% m_i Mi​%mi​的逆元
则式子可变为
M i q ≡ 1 ( m o d m i ) M_iq \equiv 1(mod\ m_i) Mi​q≡1(mod mi​)
两边再乘 a i a_i ai​则有
a i M i q ≡ a i ( m o d m i ) a_iM_iq \equiv a_i(\bmod\ m_i) ai​Mi​q≡ai​(mod mi​)
也就是说 x i = a i M i t i x_i = a_iM_it_i xi​=ai​Mi​ti​
那把所有方程的解累加起来就得到通解
则 x = ∑ i = 1 n a i M i t i x = \sum_{i = 1}^{n}a_iM_it_i x=∑i=1n​ai​Mi​ti​

板子

戳这


【数论】一些数论知识相关推荐

  1. 【数论】 质数知识总结(质数判断、筛选、质因子分解、互质)

    文章目录 一.定义 二.质数的判断 三.质数的筛选 四.质因子分解 五.互质 一.定义 质数,又称素数,若一个正整数无法被除了1和它自身以外的其它数整除,则称其为质数,否则为合数.特殊地,1既不是合数 ...

  2. 输入90输公因数java_关于Java中的几个数论中的知识

    1.将一个正整数分解质因数.例如,输入90,则打印 90=2*3*3*5: importjava.util.Scanner;/*** 分解质因数 *@authorAdministrator **/ p ...

  3. 算法基础入门——数论(数学知识基础)

    文章目录 一.质数 分解质因数 题目 代码 筛选质数 埃氏筛法 题目 代码 线性筛法 二.约数 约数个数 试除法求约数个数(时间复杂度:O(sqrt(N)) ) 未完待续 一.质数 质数即因子只有1和 ...

  4. 【数论】数论基础合集

    大佬的数论合集 目录 强烈推荐:大佬的博客:数论算法详解,超详细 一.欧几里得算法 二.扩展欧几里得算法 1.扩展欧几里得 扩展欧几里得原理 定理 (1).扩展欧几里得算法应用 (2)例题1.求整数x ...

  5. ECC与数论、数论史、代数,二次剩余符号的程序计算,高次剩余,高斯和 2013-03-23 21:52:49

    CoCoA 2015-10-9 22:49 Computational Commutative Algebra http://vdisk.weibo.com/s/Fst8dC2oag9yO?categ ...

  6. 【数论】数论算法系列文章汇总目录(持续更新中)

    本文属于「数论」系列文章的汇总目录.这一系列着重于数论算法的学习和应用.由于内容随时可能发生更新变动,欢迎关注和收藏本文以作备忘.此外,在本系列学习文章中,为了透彻理解数论知识,本人参考了诸多博客.教 ...

  7. 【数论】数论分块(详细,小白):余数求和约数研究

    数论分块 标题数论分块是一种非常重要的思想.就是对于一些表达式,它的值只有sqrt(n)种,那么我们就对于这sqrt(n)种数值进行分块,然后暴力算即可. 简单来说就是: 把一个数列分成一块一块的区域 ...

  8. 密码学基础知识-数论(从入门到放弃)

    数论知识 本文主要介绍整除.质数和合数.同余定理.模逆元素.欧几里得除法.欧拉函数.欧拉定理.费马小定理.中国剩余定理(孙子定理). 文章目录 数论知识 简介 一.整除 二.质数和合数 三.同余定理 ...

  9. AtCoder AGC031F Walk on Graph (图论、数论)

    题目链接 https://atcoder.jp/contests/agc031/tasks/agc031_f 题解 这题真是太神仙了-- 首先我们转化一下问题,倒着来做,一开始有一个数\(0\), 每 ...

  10. 数论讨伐!欧拉函数!

    [欧拉函数] 任务开始. 什么是欧拉函数?我们又怎么求呢??? 此次任务的主要怪物:欧拉函数 (1)欧拉函数定义 欧拉函数嘛,当然是我们著名的莱昂哈德·欧拉发明的啦~那么他是怎么定义介个函数滴? 咳咳 ...

最新文章

  1. 【五】搜索推荐技术在电商导购领域的应用——截图小王子
  2. 每周分享五个 PyCharm 使用技巧(四)
  3. php点击验证码,用PHP实现验证码功能
  4. Oracle在JavaOne上宣布Java EE 8将会延期至2017年底
  5. oracle游标多线程,多线程jdbc游标分页查询原理 oracle和mysql分页
  6. eclipse没有Web分支Dynamic Web Project
  7. Excel 【数据透视表】 -【动态表图】 之核心 -【切片器】
  8. LeetCode35. 搜索插入位置(二分查找)
  9. vector::erase()的那些事儿
  10. 建筑施工企业工程项目成本管理与控制对策
  11. 利用 Python 优雅地将 PDF 转换成图片
  12. 蓝桥杯 我们的征途是星辰大海
  13. jdk-8u271这里的u是什么意思
  14. 【编译原理】FIRST集和FOLLOW集构造法速学
  15. 输入密码三次,简单程序
  16. shell实现大批量word转码然后分析相关字段
  17. 5G+边缘计算 物联网嵌入式边缘计算平台
  18. php mmseg,中文分词软件 LibMMSeg
  19. 使用 Blender 构建虚拟相机以及三维测试场景
  20. 数学建模--MATLAB图像处理基础

热门文章

  1. 画论23 李廌《德隅斋画品》
  2. 条码 vs RFID: 条码应用的优势
  3. Any fool can do it (递归)
  4. (转)源于魔兽!《植物大战僵尸》成功奥秘
  5. 已经经度求带号,中央子午线经度
  6. 三线城市很难受,要重回一线城市吗?
  7. 用QQ邮箱注册到MSN live 账号
  8. amd显卡驱动linux编译安装,Debian 8 安装AMD/ATI显卡驱动
  9. 考虑灾害响应的应急设施预定位选址
  10. 北京形象宣传片开幕式前滚动播出(组图)