线性预处理整除分块

有时候要求前 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) 预处理。

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

相关推荐
熊猫_豆豆8 小时前
圆周率 π 的无理性与超越性证明
数学·代码·无理数·超越数·π
Luhui Dev14 小时前
图片几何题如何转成可编辑图形?从识别题图到复用画板的工作流
人工智能·数学·ai·agent·luhuidev
金銀銅鐵14 小时前
斐波那契数列的前 n 项和
数学
lvwangshu20 小时前
exBSGS 算法
数学·算法
Luhui Dev2 天前
大角几何如何保证图片导出尺寸一致性?
人工智能·数学·ai·luhuidev
lvwangshu3 天前
线性代数基础 Linear Algebra Basics
数学·算法
金銀銅鐵7 天前
斐波那契数列中连续10项的和总是能被11整除吗?
python·数学
金銀銅鐵8 天前
斐波那契数列的个位数出现的周期是多少?
python·数学
闻缺陷则喜何志丹9 天前
【计算几何 第十一章】凸包:混合物
数学·算法·计算几何·凸包·混合物·凸组合
桃西西呀9 天前
刷短视频越刷越窄?SVD 奇异值分解,把 10 万条电影评分拆成你的品味特征
python·数学·数据可视化