线性预处理整除分块

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

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

相关推荐
Luhui Dev8 小时前
几何图,现在可以用 API 一句话生成
人工智能·数学·luhuidev
xcLeigh15 小时前
数学之美:数字革命背后的底层逻辑
人工智能·数学·ai·数学原理·书籍·数学之美·绝对边界
Malone-AI17 小时前
f(n)=af(n-1)+b根据一阶线性递推式推导通项公式
数学·数列
闻缺陷则喜何志丹17 小时前
【解析几何丘维声 第二章】空间的平面和直线
数学·向量·解析几何·点乘·叉乘
Sunsets_Red3 天前
ABC462D 题解
c++·数学·编程·比赛·atcoder·信息学竞赛·信息学
databook3 天前
用SymPy自动因式分解:从面积拼图到代数恒等式
python·数学·动效
铸人4 天前
关于零的一些讨论
数学·极限·复数
装不满的克莱因瓶5 天前
自动微分的原理:计算图与前向传播
人工智能·pytorch·python·数学·ai·微积分·计算图
闻缺陷则喜何志丹5 天前
【解析几何丘维声 第一章】向量代数第二部分
数学·向量·计算几何·点乘·叉乘
装不满的克莱因瓶6 天前
掌握多头自注意力机制(Multi-Head Self-Attention)——Transformer 强大表达能力的核心来源
人工智能·python·深度学习·数学·ai·transformer