- 约数,又称因数:a % b == 0,则b称为a的约数,包括1和a。
例如4的正约数有:1、2、4。6的正约数有:1、2、3、6。
- 质因数:
质因数(素因数或质因子)在数论里是指能整除给定正整数(因数)的质数。
可以理解为一个数的因数中如果是质数,那么就说这个数是这个数的质因数。
- 算术基本定理:
算术基本定理可表述为:任何一个大于1的自然数 N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积
- 一个数的因数,如果排序的话,最开始的因数肯定是质因数,后面才有合数。
蓝桥杯2022年第十三届省赛真题-质因数个数

solution1
#include<stdio.h>
#include<math.h>
typedef long long LL;
const int maxN = 1e4;
int h[maxN] = {
0};
int isPrime(LL n){
for(int i = 2; i <= sqrt(n); i++){
if(n % i == 0) return 1;
}
return 0;
}
int main(){
LL n, count = 0, t;
scanf("%lld", &n);
for(int i = 2; i < maxN; i++){
if(!h[i]){
for(int j = i * i; j < maxN; j += i) h[j] = 1;
}
}
for(int i = 2; i <= sqrt(n); i++){
if(n % i == 0){
t = n / i;
if(i < maxN && !h