线性预处理整除分块

有时候要求前 n n n 个:

暴力整除分块是 O ( n n ) O(n\sqrt n) O(nn ) 的,但可以线性预处理

首先我们让 i i i 取遍 0 到正无穷,考虑差分。

思考 n − 1 n-1 n−1 变成 n n n,哪些 i i i 会发生变化。只有 n n n 的因数,所以差分出来其实就是 n n n 的因数个数。这个可以线性筛 O ( n ) O(n) O(n) 预处理。

然后再做个前缀和就还原成原数组了。

相关推荐
RE-190119 小时前
《深入浅出统计学》学习笔记(二)
大数据·数学·概率论·统计学·数理统计·知识笔记·深入浅出
程序员大雄学编程1 天前
用Python来学微积分23-微分中值定理
人工智能·python·数学·微积分
程序员大雄学编程2 天前
用Python来学微积分22-费马定理
人工智能·python·数学·微积分
程序员大雄学编程3 天前
「用Python来学微积分」17. 导数与导函数
开发语言·python·数学·微积分
盼满天繁星4 天前
浅记线性同余方程(组)
数学·数论·扩展欧几里得算法·中国剩余定理 crt·扩展中国剩余定理·bézout 定理·不定方程
RE-19015 天前
《深入浅出统计学》学习笔记(一)
大数据·数学·概率论·统计学·数理统计·知识笔记·深入浅出
量子位6 天前
两大数学奖项同时颁给王虹!北大三校友包揽“华人菲尔兹”
数学
程序员大雄学编程6 天前
「用Python来学微积分」18. 微分
开发语言·python·数学·微积分
程序员大雄学编程7 天前
「用Python来学微积分」16. 导数问题举例
开发语言·python·数学·微积分
程序员大雄学编程9 天前
「用Python来学微积分」11. 夹逼定理与单调有界收敛定理
python·数学·微积分·1024程序员节