尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
洛谷 P2424:约数和 ← 整数分块算法 + 约数
【题目来源】https://www.luogu.com.cn/problem/P2424【题目描述】对于一个数 X函数 f(X) 表示 X 所有约数的和。例如f(6)123612。对于一个 XSmart 可以很快的算出 f(X)。现在的问题是给定两个正整数 X,Y(XY)Smart 希望尽快地算出 f(X)f(X1)……f(Y)的值你能帮助 Smart 算出这个值吗【输入格式】输入文件仅一行两个正整数 X 和 Y(XY)表示需要计算 f(X)f(X1)⋯f(Y)。​​​​​​​【输出格式】输出只有一行为 f(X)f(X1)⋯f(Y) 的值。​​​​​​​【输入样例】123 321​​​​​​​【输出样例】72543【数据范围】对于 20% 的数据有 1≤XY≤10^5。对于 60% 的数据有 1≤XY≤1×10^7。对于 100% 的数据有 1≤XY≤2×10^9。【算法分析】● 洛谷 P2424 要求计算∑f(i)i1~n。其中f(i) 表示 i 的所有约数之和。直接计算每个数的约数之和再累加复杂度太高。我们用交换求和顺序的技巧1枚举每个可能的约数 d统计它在 1∼n 中作为约数出现的次数。2对于约数 d它在 1∼n 中作为约数出现的次数是 ⌊n/d⌋每次贡献 d。因此∑f(i)d⋅⌊n/d⌋d1~n。例如若 i1~6则 ∑f(i)f(1)f(2)f(3)f(4)f(5)f(6)1(12)(13)(124)(15)(1236)1×⌊6/1⌋2×⌊6/2⌋3×⌊6/3⌋4×⌊6/4⌋5×⌊6/5⌋6×⌊6/6⌋。● 对于块 [le,ri]⌊n/d⌋k 为常数需要计算∑d⋅kk⋅∑ddle~ri。区间 [le,ri] 内所有 d 的和是一个等差数列∑d(leri)⋅(ri−le1)/2dle~ri。● 注意这道题交换了求和顺序从“枚举每个数 i求它的所有约数之和”变成了“枚举每个约数 d统计它在多少个数中出现过”。这个转换改变了枚举的对象从 i 变成了 d但 d 本身的顺序依然是 1, 2, 3, ... 递增的没有被打乱。● 本题代码与“洛谷 P3935Calculatinghttps://blog.csdn.net/hnjzsyjyj/article/details/162990202”及其类似。【算法代码】#include bits/stdc.h using namespace std; typedef long long LL; LL cal(LL n) { LL t0; for(LL le1,ri0; len; leri1) { LL kn/le; rin/k; ttk*(rile)*(ri-le1)/2; } return t; } int main() { ios::sync_with_stdio(0); cin.tie(0); LL le,ri; cinleri; LL anscal(ri)-cal(le-1); coutans\n; return 0; } /* in:123 321 out:72543 */【参考文献】https://blog.csdn.net/hnjzsyjyj/article/details/162990202https://blog.csdn.net/hnjzsyjyj/article/details/163011369https://blog.csdn.net/hnjzsyjyj/article/details/162819219
RELATED

相关推荐

3个关键指标,帮你选出专业的种子包装袋厂家

3个关键指标,帮你选出专业的种子包装袋厂家

种子包装行业的从业者都清楚,选对包装袋直接影响种子的储存和运输效果。在这个领域,有一些厂家凭借专业实力和稳定品质逐渐获得了市场认可。从生产经验来看,真正专业的厂家通常具备这些特质:首先是原材料把控严格,采用…

📅 2026/8/24 1:28:33
GitHub开源实测|OpenLogi:Rust零遥测罗技外设替代工具 架构深度评测与企业落地风控指南

GitHub开源实测|OpenLogi:Rust零遥测罗技外设替代工具 架构深度评测与企业落地风控指南

GitHub开源实测|OpenLogi:Rust零遥测罗技外设替代工具 架构深度评测与企业落地风控指南 评测项目:AprilNEA/OpenLogi(最新 v0.6.22) 核心定位:基于Rust实现、零账号、无网络遥测、纯本地运行的罗技外设替代…

📅 2026/9/9 23:53:52
Credit Network Modeling and Analysis via Large Language Models

Credit Network Modeling and Analysis via Large Language Models

文章总结与翻译 一、主要内容 本文聚焦大型语言模型(LLMs)在金融信用网络建模与分析中的应用,核心围绕两大任务展开: 信用网络构建:提出基于LLMs的框架,将企业非结构化财务报表(遵循GAAP或IFRS标准)转化为结构化信用网络。该过程先为单个企业生成专属信用网络(节点为…

📅 2026/9/16 14:48:06
MORE NEWS

更多资讯

📰

git reset --hard 后悔药:用 reflog 和 fsck 找回丢失的代码

做开发的,谁没按过几次git reset --hard呢?这个命令堪称 Git 命令里的“横冲直撞王”:一行代码下去,工作区整个回到过去的状态,所有未提交的修改说没就没,当前分支直接指向历史 commit——速度快、动作猛、…

📰

计算机专业生涯规划书:从Word文档到可验证技能路线图

简介:本资源是一份专为计算机科学与技术专业大学生设计的《职业生涯规划书》完整模板(2021年版),聚焦高校学生从自我认知到职业落地的全流程规划需求,解决目标模糊、路径不清、缺乏实操框架等常见问题。文档共28页、约…

📰

Swift运算符速查清单:基础、位运算与自定义运算符全解析(Swift编程语言中文版)

Swift运算符速查清单:基础、位运算与自定义运算符全解析(Swift编程语言中文版) 【免费下载链接】the-swift-programming-language-in-chinese 中文版 Apple 官方《Swift 编程语言》 项目地址: https://gitcode.com/gh_mirrors/th/the-swift…

📰

OpenBCI脑电数据导入MNE:从CSV到脑地形图全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

2026年AI编程工具全景:33款主流工具分类与实战选型指南

2026年再问“AI编程工具哪家强”,已经没法一句话回答了。两年前大家还在讨论要不要装一个GitHub Copilot,现在GitHub Copilot只是三十多个主流选项里的一个。Cursor、Windsurf、Claude Code、Devin这些名字频繁出现在团队的技术分享和招聘要求里&#xf…

📰

工业相机镜头选型全解析:从焦距计算到现场踩坑避雷指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬