整除

版权声明:欢迎转载,但请标注来源 https://blog.csdn.net/qq_42686721/article/details/82709643

#整除、约数
###整除
在这里整理一下整除的各种性质之类的,之前学数论没有好好学这个……(学了个假数论)。

定义 b a b | a 表示对于某个整数k,有 a = k × b a = k \times b
读作b整除a,或者a被b整除

特殊的,0可以被任何数整除

简单性质
a b , b c a | b,b | c –> a c a | c
a b , a c a |b, a | c –> a ( b × c ) , a ( x b + y c ) a | (b \times c),a | (xb + yc) ,x,y为任意整数
若p为素数, p a b p | ab ,则 p a p | a p b p | b

###约数
对于一个正整数a,如果存在正整数d,满足 d a d | a ,那么我们说d是a的约数

素数:大于1的自然数中,如果某个数的约数只有1和它本身,则这样的数称为素数
合数:一个正整数中,如果约数除了1和它本身,还有其他的整数,则这样的数称为合数

约数简单性质

  1. 除非是平方数,一个数的约数是成对出现的
  2. 如果一个数的约数为奇数个,这个数一定是完全平方数
  3. 一个数的约数可以通过 O ( ( N ) ) O(\sqrt{(N)}) 的方法内筛出

当然也有更不错的筛法,这里给出代码:

void func(int n) {
	int k = 2;
	while (n != k) {
		while (n % i == 0) {
			xx.push (i);
			n /= i;
		}
		 ++ k;
	}
}

猜你喜欢

转载自blog.csdn.net/qq_42686721/article/details/82709643