数论——整除

博客主要围绕数论展开,介绍了整除的相关性质,如若a∣b且b∣c则a∣c等,并给出证明。还阐述了最大公约数与最小公倍数的关系,即gcd(a,b)∗lcm(a,b)=a∗b。此外,介绍了九章算术的更相减损术和欧几里得算法求最大公约数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

qwq

数论——欧拉函数

我终于开始学数论了啊
以下全为一个蒟蒻的口胡

正文

  • a , b a,b a,b为非零整数,若存在 a ∗ q = b a*q=b aq=b,那么就说 b b b可被 a a a整除,记作 a ∣ b a\mid b ab
  • 如果 a ∣ b a\mid b ab b ∣ c b\mid c bc那么, a ∣ c a \mid c ac
  • a ∣ b a\mid b ab a ∣ c a \mid c ac等价于对于任意整数 x , y x,y x,y a ∣ ( b ∗ x + c ∗ y ) a\mid (b*x+c*y) a(bx+cy)
  • m = ̸ 0 m = \not 0 m≠0,那么 a ∣ b a\mid b ab等价于 ( m ∗ a ) ∣ ( m ∗ b ) (m*a)\mid (m*b) (ma)(mb)
  • 设整数 x , y x,y x,y满足 a ∗ x + b ∗ y = 1 a*x+b*y=1 ax+by=1,且 a ∣ n , b ∣ n a\mid n,b \mid n an,bn那么 ( a ∗ b ) ∣ n (a*b)\mid n (ab)n
    证明:
    ∵ a ∣ n , b ∣ n \because a \mid n,b \mid n an,bn
    ∴ ( a ∗ b ) ∣ ( n ∗ b ) , ( a ∗ b ) ∣ ( n ∗ a ) \therefore(a*b)\mid(n*b),(a*b) \mid (n * a) (ab)(nb),(ab)(na)
    ∴ ( a ∗ b ) ∣ ( x ∗ n ∗ a + y ∗ n ∗ b ) \therefore(a*b) \mid(x*n*a+y*n*b) (ab)(xna+ynb)
    ∵ a ∗ n ∗ x + b ∗ n ∗ y = n ∗ ( a ∗ x + b ∗ y ) = n \because a*n*x+b*n*y=n*(a*x+b*y)=n anx+bny=n(ax+by)=n
    ∴ ( a ∗ b ) ∣ n \therefore(a*b)\mid n (ab)n
  • b = q ∗ d + c b=q*d+c b=qd+c,那么 d ∣ b d\mid b db的充要条件是 d ∣ c d \mid c dc
  • ∀ a , b ∈ N , gcd ⁡ ( a , b ) ∗ l c m ( a , b ) = a ∗ b \forall a,b \in\N, \quad \gcd(a,b)*lcm(a,b)=a*b a,bN,gcd(a,b)lcm(a,b)=ab l c m ( a , b ) lcm(a,b) lcm(a,b) a , b a,b a,b的最小公倍数)
    证明:
    d = gcd ⁡ ( a , b ) d=\gcd(a,b) d=gcd(a,b)
    a 0 = a / d , b 0 = b / d a_0=a/d,b_0=b/d 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*b_0 lcm(a0,b0)=a0b0
    l c m ( a 0 ∗ d , b 0 ∗ d ) = a 0 ∗ b 0 ∗ d lcm(a_0*d,b_0*d)=a_0*b_0*d lcm(a0d,b0d)=a0b0d
    l c m ( a , b ) = a ∗ b / g c d ( a , b ) lcm(a,b)=a*b/gcd(a,b) lcm(a,b)=ab/gcd(a,b)
    l c m ( a , b ) ∗ g c d ( a , b ) = a ∗ b lcm(a,b)*gcd(a,b)=a*b lcm(a,b)gcd(a,b)=ab
  • 九章算术(更相减损术)
    ∀ a , b ∈ N , a ≥ b \forall a,b \in \N,a\geq b a,bN,ab,有 gcd ⁡ ( a , b ) = gcd ⁡ ( b , a − b ) = gcd ⁡ ( a , a − b ) \gcd(a,b)=\gcd(b,a-b)=\gcd(a,a-b) gcd(a,b)=gcd(b,ab)=gcd(a,ab)
    ∀ a , b ∈ N \forall a, b \in \N a,bN,有 gcd ⁡ ( 2 a , 2 b ) = 2 gcd ⁡ ( a , b ) \gcd(2a, 2b)=2\gcd(a,b) gcd(2a,2b)=2gcd(a,b)
    gcd ⁡ ( a 1 , a 2 , ⋯   , a n ) = gcd ⁡ ( a 1 , a 2 − a 1 , ⋯   , a n − a n − 1 ) \gcd(a_1,a_2,\cdots,a_n)=\gcd(a_1,a_2-a_1,\cdots,a_n-a_{n-1}) gcd(a1,a2,,an)=gcd(a1,a2a1,,anan1)
  • 欧几里得算法
    ∀ a , b ∈ N , b = ̸ 0 , gcd ⁡ ( a , b ) = gcd ⁡ ( b , a   m o d   b ) \forall a,b \in \N, b = \not 0, \qquad \gcd(a,b)=\gcd(b, a \bmod b) a,bN,b≠0,gcd(a,b)=gcd(b,amodb)
inline int gcd(int a, int b} { return b ? gcd(b, a % b) : a; }

复杂度大致为 O ( l o g ( a + b ) ) O(log(a+b)) O(log(a+b))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值