求 因数的个数

求 因数的个数

如何 快速求一个数的因数的个数

for(int i = 1; i <= 1000000; i++) cnt[i] = 2;

cnt[1] = 1;

for(int i = 2; i <= 1000000; i++){

for(int j = i+i; j <= 1000000; j += i) cnt[j]++;

}

问题 2 : 如何求 1 - n 里所有数约数个数的总和 ?

ll ans = 0;

for(int i = 1 ; i <= n ; i++ ) ans += (n/i);

printf("%lld\n", ans);

对于一个所要求的数 n ,我们要求的就是遍历 1 - n , 找有几个数是此数的倍数,将结果累加就可以。

问题3 : 如何求 1 - n 里所有数约数个数最多的数是哪个?

约数定理 : 任意一个数都可以写成 质因数的幂次的乘积的形式

相关推荐

英雄联盟脚本挂机封号多久(lol挂脚本封号多久)
世界杯365网站打不开

英雄联盟脚本挂机封号多久(lol挂脚本封号多久)

📅 10-10 👁️ 8710
保罗·乔治:无人扶我篮球志,我自丝滑到播客
世界杯365网站打不开

保罗·乔治:无人扶我篮球志,我自丝滑到播客

📅 01-20 👁️ 7299
华晨宝马汽车有限公司:公司概况
mobile365体育投注

华晨宝马汽车有限公司:公司概况

📅 01-17 👁️ 8333
[百家说故事]西游的启示·灵山究竟在哪里
365bet最新备用网站

[百家说故事]西游的启示·灵山究竟在哪里

📅 07-07 👁️ 2983
为什么我的手机打电话会出现对方正忙线中? , 为什么手机打别人电话提示对方线路忙?
你收藏的 CD、DVD 壽命有多長?
世界杯365网站打不开

你收藏的 CD、DVD 壽命有多長?

📅 07-25 👁️ 2537