csp信奥赛C++之约数研究 📅 发布时间:2026/7/5 7:01:07 👁️ 浏览次数: csp信奥赛C之约数研究原题说明洛谷P1403 [AHOI2005] 约数研究题目描述科学家们在 Samuel 星球上的探险得到了丰富的能源储备这使得空间站中大型计算机 Samuel II 的长时间运算成为了可能。由于在去年一年的辛苦工作取得了不错的成绩小联被允许用 Samuel II 进行数学研究。小联最近在研究和约数有关的问题他统计每个正数N NN的约数的个数并以f ( N ) f(N)f(N)来表示。例如12 1212的约数有1 , 2 , 3 , 4 , 6 , 12 1,2,3,4,6,121,2,3,4,6,12因此f ( 12 ) 6 f(12)6f(12)6。下表给出了一些f ( N ) f(N)f(N)的取值N NN1 112 223 334 445 556 66f ( N ) f(N)f(N)1 112 222 223 332 224 44现在请你求出∑ i 1 n f ( i ) \sum_{i1}^n f(i)i1∑nf(i)输入格式输入一个整数n nn。输出格式输出答案。输入输出样例 1输入 13输出 15说明/提示对于20 % 20\%20%的数据N ≤ 5000 N \leq 5000N≤5000对于100 % 100\%100%的数据1 ≤ N ≤ 10 6 1 \leq N \leq 10^61≤N≤106。暴力代码#includebits/stdc.husingnamespacestd;intn,sum0;// n 为输入上限sum 累计所有 f(i) 的和// 计算 x 的约数个数intf(intx){intcnt0;// 约数计数器// 只需枚举到 sqrt(x) 即可成对统计for(inti1;isqrt(x);i){if(x%i0){// i 是 x 的约数cnt2;// 将 i 和 x/i 这一对都计入}if(i*ix){// 若 i 恰好等于 x/i说明是平方数之前多算了一次cnt--;// 减去重复的一次}}returncnt;}intmain(){cinn;// 输入 n// 枚举 1 到 n 的每个数累加它们的约数个数for(inti1;in;i){sumf(i);}coutsum;// 输出结果return0;}暴力代码TLE 原因分析数据范围题目中 (n) 最大可达10 6 10^6106。外层循环共执行n 10 6 n 10^6n106次。内层函数f(i)对于每个 i需要循环i \sqrt{i}i次取整。总计算量约为∑ i 1 n i ≈ ∫ 0 n x d x 2 3 n 3 / 2 \sum_{i1}^{n} \sqrt{i} \approx \int_{0}^{n} \sqrt{x} \, dx \frac{2}{3} n^{3/2}∑i1ni≈∫0nxdx32n3/2代入 (n 10^6)2 3 × ( 10 6 ) 3 / 2 2 3 × 10 9 ≈ 6.67 × 10 8 \frac{2}{3} \times (10^6)^{3/2} \frac{2}{3} \times 10^9 \approx 6.67 \times 10^832×(106)3/232×109≈6.67×108即大约 6.7 亿次循环迭代。结论暴力枚举每个数的约数个数的方法在n 10 6 n10^6n106时无法通过时限必须采用更高效的数学方法如统计每个约数出现的次数。优化思路分析更高效的方法转换角度统计每个正整数 d作为约数出现在多少个 i 中。对于给定的 d在1 ∼ n 1 \sim n1∼n中d 的倍数有⌊ n d ⌋ \left\lfloor \frac{n}{d} \right\rfloor⌊dn⌋个因此 d对总和的贡献就是⌊ n d ⌋ \left\lfloor \frac{n}{d} \right\rfloor⌊dn⌋。于是∑ i 1 n f ( i ) ∑ d 1 n ⌊ n d ⌋ \sum_{i1}^n f(i) \sum_{d1}^n \left\lfloor \frac{n}{d} \right\rfloor∑i1nf(i)∑d1n⌊dn⌋直接循环 d 1 到 n 累加即可时间复杂度 O(n)空间复杂度 O(1)。对于n ≤ 10 6 n \le 10^6n≤106完全可行。AC代码#includebits/stdc.h// 万能头文件usingnamespacestd;intmain(){intn;// 输入的上限scanf(%d,n);// 读入 nlonglongans0;// 答案可能超出 int 范围使用 long long// 枚举每个可能的约数 d统计它出现的次数并累加for(intd1;dn;d){ansn/d;// d 作为约数出现的次数 floor(n / d)}printf(%lld\n,ans);// 输出结果return0;}【文末福利一等奖秘籍汇总】完整csp信奥赛C学习资料1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转3、csp信奥赛高频考点知识详解及案例实践CSP信奥赛C动态规划https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转CSP信奥赛C标准模板库STLhttps://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转信奥赛C提高组csp-s知识详解及案例实践https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转4、csp信奥赛冲刺一等奖有效刷题题解CSP信奥赛C初赛及复赛高频考点真题解析持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转信奥赛C提高组csp-s初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转5、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转GESP(C 七级八级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}
【大数据毕设源码分享】django基于机器学习的气象采集与分析系统的设计与实现(程序+文档+代码讲解+一条龙定制) 博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am… 2026/5/17 6:39:38
部署 Squid 集群 + Nginx 虚拟主机,实现 Web 页面缓存与完整校验 文章目录部署 Squid 集群 Nginx 虚拟主机,实现 Web 页面缓存与完整校验整体架构一、部署后端 Nginx 虚拟主机1. 安装 Nginx2. 配置虚拟主机3. 验证虚拟主机二、部署 Squid 集群(双节点兄弟模式)1. 安装 Squid2. 基础配置(两台配置… 2026/5/17 6:39:38
前端人狂喜:文心4.0一键生成中文技术视频,加特效字幕简直不要太丝滑 前端人狂喜:文心4.0一键生成中文技术视频,加特效字幕简直不要太丝滑前端人狂喜:文心4.0一键生成中文技术视频,加特效字幕简直不要太丝滑别卷代码了,来看看AI怎么帮咱们"摸鱼"出大片这玩意儿到底是个啥&#… 2026/5/17 6:39:38
【复现】基于噪声抑制半监督学习的锂离子电池SOH估计方法(Python代码实现) 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 🎁… 2026/7/5 6:53:58
【全国二级三级等保】等保测评2.0! 等保2.0!!!全国二级三级等保测评❌ 低价代办:只给文档模板,测评、整改全另收费,报告无法备案,处处隐形消费❌ 单纯咨询服务:只出方案,没人陪测、没人跟进复测,服务单一✅ 我们等保一站式落地&am… 2026/7/5 6:53:58
免费开源AMD Ryzen调试神器:3分钟上手SMUDebugTool硬件掌控完全指南 免费开源AMD Ryzen调试神器:3分钟上手SMUDebugTool硬件掌控完全指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址… 2026/7/5 6:51:58
静音直流电机控制方案:TB9051FTG与PIC18LF46K42应用 1. 项目概述:静音直流电机控制方案在工业自动化和消费电子领域,直流电机的噪声问题一直是工程师面临的挑战。传统PWM控制方式虽然简单高效,但开关噪声和电磁干扰(EMI)问题严重影响设备的使用体验。本项目采用东芝TB9051FTG电机驱动IC与Microc… 2026/7/5 6:51:58
【2027最新】基于SpringBoot+Vue的智慧党建系统管理系统源码+MyBatis+MySQL 博主介绍:👨🎓博主简介 ❤计算机在读硕士 | CSDN 专业博客 | Java 技术布道者 ❤深耕实验室一线,痴迷 Spring Boot 与前后端分离架构,累计原创技术博文 200 篇; ❤手把手指导毕业设计 1000 项,… 2026/7/5 6:49:57
IS31FL3731 LED驱动与R7FA6M3AH3CFC MCU开发指南 1. IS31FL3731 LED驱动芯片深度解析IS31FL3731是一款由Lumissil Microsystems公司推出的高性能LED驱动芯片,专为控制144个单色LED而设计。这款芯片通过I2C接口进行编程控制,具有两个独立的控制区块,每个区块可独立管理72个LED。其核心特性包括… 2026/7/5 6:49:57
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/5 0:01:32
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/5 0:01:32
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/5 0:05:36
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/5 0:01:32
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/5 0:01:32
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/5 0:05:36