Hdu 2824 欧拉函数的应用
2015-08-10 19:23
239 查看
## Hdu 2824 ##
思路:
对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。所以通过欧拉函数把a到b所有函数值相加即可得出答案。
思路:
对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。所以通过欧拉函数把a到b所有函数值相加即可得出答案。
#include <cstdio> #include <cstring> #include <vector> #include <algorithm> #include <map> #include <iostream> using namespace std; long long phi[3000010]; //因为题目所给最大是3000000,所以用phi来记录2到3000000所有欧拉函数的值。 int main() { ios::sync_with_stdio(false); //让cin、cout的速度和scanf、printf的速度一样。 for (int i = 2; i<=3000000; i++) phi[i] = i; for (int i = 2; i<=3000000; i++) { if (phi[i] == i) { //只有素数才可能成立。 for (int j = i; j<=3000000; j+=i) { phi[j] = phi[j]/i*(i-1); //运用埃氏筛的思想,让每个素数的不同倍数进行欧拉函数中的一步。 } } } long long a,b; while (cin>>a>>b) { long long sum = 0; for (long long c = a; c<=b; c++) { sum=sum + phi[c]; } cout<<sum<<endl; } return 0; }
相关文章推荐
- UI09_多种UITableView(一个界面出现三个tableView,省市区数组)
- JVM垃圾回收、调优总结
- 数据结构(9)平衡查找树之B树
- 8.10 mysql
- 音乐播放器:添加了广播和后台服务、通知
- 合唱队(求最大子序列问题)
- hdu 1513 Palindrome
- index.html + smarty模板
- Codeforces Round #Pi (Div. 2) D. One-Dimensional Battle Ships
- 阿里巴巴、腾讯、百度的面试问题笔知识汇总(两)
- 推荐他们认为有用Sublime Text3小工具
- UVA 10986 Sending email SPFA
- 数据结构(8)平衡查找树之红黑树
- Android studio 使用心得(八)----测试程序单元测试
- iOS项目代码行数统计
- Python多线程爬取知乎获赞过千的答案链接
- 浅谈setInterval和setTimeout的区别
- Linked List Cycle II
- android 控制手机的体积的大小 切换音效模式
- 详解c++构造函数