P1403 [AHOI2005]约数研究(筛法)
题目描述
科学家们在 Samuel 星球上的探险得到了丰富的能源储备,这使得空间站中大型计算机 Samuel II 的长时间运算成为了可能。由于在去年一年的辛苦工作取得了不错的成绩,小联被允许用 Samuel II 进行数学研究。
小联最近在研究和约数有关的问题,他统计每个正数 NNN 的约数的个数,并以 f(N)f(N)f(N) 来表示。例如 121212 的约数有 1,2,3,4,6,121,2,3,4,6,121,2,3,4,6,12,因此 f(12)=6f(12)=6f(12)=6。下表给出了一些 f(N)f(N)f(N) 的取值:
NNN | 111 | 222 | 333 | 444 | 555 | 666 |
---|---|---|---|---|---|---|
f(N)f(N)f(N) | 111 | 222 | 222 | 333 | 222 | 444 |
现在请你求出:
∑i=1nf(i)\sum_{i=1}^n f(i) i=1∑nf(i)
输入格式
输入一个整数 nnn。
输出格式
输出答案。
输入输出样例
输入 #1
3
输出 #1
5
类似筛质数的过程,这里换成给对应位置++。最后求一个前缀和就行。
#include <bits/stdc++.h> using namespace std; int a[1000006]={0};//?不管用 int main() { int n; cin>>n; int i,j; for(i=1;i<=n;i++) { for(j=1;i*j<=n;j++) { a[i*j]++; } } for(i=1;i<=n;i++)a[i]+=a[i-1]; cout<<a[n]; return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!