思路:欧拉函数;

欧拉函数,然后用下等差数列公式就行了。

 1 #include<stdio.h>
2 #include<algorithm>
3 #include<iostream>
4 #include<queue>
5 #include<math.h>
6 #include<vector>
7 #include<bitset>
8 using namespace std;
9 typedef long long LL;
10 bool prime[5000000];
11 int ans[1000000];
12 int oula[5000000];
13 int main(void)
14 {
15 int i,j;
16 for(i = 0; i < 5000000; i++)
17 {
18 oula[i] = i;
19 }
20 for(i = 2; i <10000 ; i++)
21 {
22 if(!prime[i])
23 {
24 for(j = i; (i*j) <= 5000000; j++)
25 prime[i*j] = true;
26 }
27 }
28 int cn = 0;
29 for(i = 2 ; i <= 5000000; i++)
30 if(!prime[i])
31 ans[cn++]=i;
32 oula[0] = 0;
33 oula[1] = 1;
34 for(i = 0; i < cn; i++)
35 {
36 for(j = 1; (ans[i]*j) <= 5000000; j++)
37 {
38 oula[ans[i]*j]/=ans[i];
39 oula[ans[i]*j]*=ans[i]-1;
40 }
41 }
42 int n;
43 while(scanf("%d",&n),n!=0)
44 { LL sum=0;
45 for(i = 2;i <=n ;i++)
46 { LL ak = (LL)(1+n/i)*(LL)(n/i)/2;
47 sum+=ak*oula[i];
48 }
49 printf("%lld\n",sum);
50 }return 0;
51 }

最新文章

  1. 利用WCF的双工通讯实现一个简单的心跳监控系统
  2. Canvas里绘制矩阵文字
  3. 贪心 Codeforces Round #300 A Cutting Banner
  4. G面经Prepare: Search word delete sequence in dictionary
  5. 转:鏖战双十一-阿里直播平台面临的技术挑战(webSocket, 敏感词过滤等很不错)
  6. 01-04-01【Nhibernate (版本3.3.1.4000) 出入江湖】原生的SQL查询
  7. SCAU 1138 代码等式
  8. CPU再烂,俺也支持虚拟化呀,再附送64位WINDOWS的IIS上配置支持PHP的注意事项
  9. MTD应用学习:mtd和mtdblock的区别
  10. OSI 网络七层模型(笔记)
  11. 武汉科技大学ACM:1005: Soapbear and Honey
  12. SignalR在ASP.NET MVC中的应用
  13. birt-j脚本调试 &amp; 动态sql的实现
  14. Gitlab的安装与实践
  15. 浅谈format格式化输出
  16. Android程序崩溃异常收集框架
  17. Dockerfile Volume指令与docker -v的区别
  18. JavaScript大杂烩16 - 推荐实践
  19. Spark 论文篇-大型集群上的快速和通用数据处理架构(中英双语)
  20. 宝塔linux面板运行jsp文件的配置工作

热门文章

  1. CMakeLists.txt添加多个源代码
  2. 第二个基础框架 — spring — xml版,没用注解 — 更新完毕
  3. Shell 指定行处理head、tail、sed
  4. 日常Java 2021/10/12
  5. 学习java 7.27
  6. 连接查询条件在on后面和条件在where后面
  7. 【Java 8】 集合间转换工具——Stream.collect
  8. JDBC(3):PreparedStatement对象介绍
  9. I/O流之文件流
  10. .gitignore文件作用