线性预处理整除分块

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

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

相关推荐
闻缺陷则喜何志丹5 天前
【数论】P12191 [蓝桥杯 2025 省研究生组] 01 串|普及+
c++·数学·蓝桥杯·数论·洛谷
Wishell20155 天前
日拱一卒之学习记录2
数学
闻缺陷则喜何志丹15 天前
【.NetAPI]统计标注的值、上公差、下公差
数学·.net·cad·netapi
燃于AC之乐16 天前
我的算法修炼之路--6 ——模幂、构造、背包、贪心、剪枝、堆维护六题精析
c++·数学·算法·贪心算法·dfs·剪枝·01背包
朔北之忘 Clancy18 天前
2025 年 9 月青少年软编等考 C 语言一级真题解析
c语言·开发语言·c++·学习·数学·青少年编程·题解
charlie11451419122 天前
从0开始的机器学习(笔记系列)——导数 · 多元函数导数 · 梯度
人工智能·笔记·学习·数学·机器学习·导数
patrickpdx23 天前
2015年伊朗数学奥林匹克国家队选拔赛几何
数学
铸人1 个月前
四元数散度和旋度-7
数学·复数·超复数
好奇龙猫1 个月前
【大学院-筆記試験練習:线性代数和数据结构(1)】
数据结构·数学
救救孩子把1 个月前
0-机器学习与大模型开发数学教程
人工智能·数学·机器学习