Processing math: 50%

【BZOJ】【1968】【AHOI2005】COMMON 约数研究

数论


  原谅我这么傻逼的题都不会做……

  或许写成数学公式的形式比较容易想到解法?

  ans=ni=1d|i1

  ……是不是感觉很水呀……是吧……改成先枚举d再枚举 i 看看……

  ans=\sum_{d=1}^n \sum_{d|i} 1=\sum_{d=1}^n \lfloor\frac{n}{d}\rfloor

  果然我是个傻逼……

复制代码
 1 /**************************************************************
 2     Problem: 1968
 3     User: Tunix
 4     Language: C++
 5     Result: Accepted
 6     Time:32 ms
 7     Memory:804 kb
 8 ****************************************************************/
 9  
10 #include<cstdio>
11 int main(){
12     int n,ans=0;
13     scanf("%d",&n);
14     for(int i=1;i<=n;i++) ans=ans+n/i;
15     printf("%d\n",ans);
16     return 0;
17 }
18 
View Code
复制代码

1968: [Ahoi2005]COMMON 约数研究

Time Limit: 1 Sec  Memory Limit: 64 MB
Submit: 1174  Solved: 884
[Submit][Status][Discuss]

Description

Input

只有一行一个整数 N(0 < N < 1000000)。

Output

只有一行输出,为整数M,即f(1)到f(N)的累加和。

Sample Input

3

Sample Output

5

HINT

Source

[Submit][Status][Discuss]
posted @   Tunix  阅读(180)  评论(0)    收藏  举报
编辑推荐:
· 解锁.NET 9性能优化黑科技:从内存管理到Web性能的最全指南
· 通过一个DEMO理解MCP(模型上下文协议)的生命周期
· MySQL下200GB大表备份,利用传输表空间解决停服发版表备份问题
· 记一次 .NET某固高运动卡测试 卡慢分析
· 微服务架构学习与思考:微服务拆分的原则
阅读排行:
· 解锁.NET 9性能优化黑科技:从内存管理到Web性能的最全指南
· .net clr 8年才修复的BUG,你让我损失太多了
· 一个神奇的JS代码,让浏览器在新的空白标签页运行我们 HTML 代码(createObjectURL
· 即时通信SSE和WebSocket对比
· 做Docx预览,一定要做这个神库!!
点击右上角即可分享
微信分享提示