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