ACwing(基础)--- 质数和分解质因数

Posted bingers

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ACwing(基础)--- 质数和分解质因数相关的知识,希望对你有一定的参考价值。

质数

  • 大于1的整数中,如果只包含1和它本身这两个约数,就被称为质数,也叫素数

质数的判定

  • 试除法---时间复杂度O(sqrt(n))
bool isprime(int x){
	if(x < 2) return 0;
	for(int i=2;i <= x/i;i++){
		if(x%i==0)
		return false;
	}
	return true;
}

分解质因数

  • 试除法---时间复杂度O(sqrt(n))
void divide(int x)
{
    for (int i = 2; i <= x / i; i ++ )
        if (x % i == 0)
        {
            int s = 0;
            while (x % i == 0) x /= i, s ++ ;
            cout << i << ‘ ‘ << s << endl;
        }
    if (x > 1) cout << x << ‘ ‘ << 1 << endl;
    cout << endl;
}

以上是关于ACwing(基础)--- 质数和分解质因数的主要内容,如果未能解决你的问题,请参考以下文章

第五章 数学知识

AcWing数学知识

python基础练习题(题目 将一个整数分解质因数。例如:输入90,打印出90=2*3*3*5)

AcWing数学知识

AcWing数学知识

AcWing数学知识