博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BZOJ 1968 [Ahoi2005]COMMON 约数研究
阅读量:4569 次
发布时间:2019-06-08

本文共 915 字,大约阅读时间需要 3 分钟。

1968: [Ahoi2005]COMMON 约数研究

Description

Input

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

Output

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

Sample Input

    3

Sample Output

    5
 

 

题意:给定n,求1~n所有数约数个数和

考虑每个数对答案的贡献,x 对答案贡献为 n / x,复杂度O(n)

可以优化到O(√n),有空再来填坑叭

1 #include
2 #include
3 #include
4 #include
5 #include
6 #include
7 8 using namespace std; 9 10 template
void read (tn & a) {11 tn x = 0, f = 1;12 char c = getchar();13 while (c < '0' || c > '9'){ if (c == '-') f = -1; c = getchar(); }14 while (c >= '0' && c <= '9'){ x = x * 10 + c - '0'; c = getchar(); }15 a = f == 1 ? x : -x;16 }17 18 int main() {19 int n;20 read(n);21 long long ans = 0;22 for (int i = 1; i <= n; ++i) {23 ans += (long long) (n / i);24 }25 printf("%lld\n", ans);26 return 0;27 }
View Code

 

转载于:https://www.cnblogs.com/m-m-m/p/8858675.html

你可能感兴趣的文章
python学习之while 和for循环
查看>>
HPS端GPIO控制
查看>>
面向对象封装
查看>>
SQL INSERT INTO 语句
查看>>
网站里用什么图片?
查看>>
泛型类与方法混合使用,及静态方法使用泛型
查看>>
(转)shell实例浅谈之产生随机数七种方法
查看>>
poj1860 bellman—ford队列优化 Currency Exchange
查看>>
http和https的异同
查看>>
poj 1274 The Perfect Stall (最大匹配)
查看>>
【成长大小事】吃饭+挣钱=在深圳
查看>>
找茬脚本思路(修改中)
查看>>
Java创建线程的细节分析
查看>>
python语法_深浅拷贝
查看>>
使用CCleaner卸载chrome
查看>>
typeof和GetType的区别
查看>>
git cherry-pick 从其他分支检出指定的commit到当前分支
查看>>
Java中的BoneCP数据库连接池用法
查看>>
LeanModal 轻量级jquery弹出层插件
查看>>
STL简介
查看>>