求解欧拉函数值
来源:互联网 发布:阿里云centos ssh 编辑:程序博客网 时间:2024/06/05 18:16
/************************************************************************* > File Name: phi.cpp > Author: wangzhili > Mail: wangstdio.h@gmail.com > Created Time: 2014年03月17日 星期一 21时05分09秒 ************************************************************************/#include<iostream> //求解欧拉函数值(小于等于n的数中与n互质的数的个数);using namespace std;const int MAX = 1111111;int minDiv[MAX], phi[MAX], sum[MAX];void getphi(){ for(int i = 1;i <= MAX;i ++){ minDiv[i] = i; } for(int i = 2;i * i < MAX;i ++){ //求解j的最小质因数; if(i == minDiv[i]){ for(int j = i * i;j < MAX;j += i){ minDiv[j] = i; } } } phi[1] = 1; for(int i = 2;i < MAX;i ++){ phi[i] = phi[i / minDiv[i]]; if((i / minDiv[i]) % minDiv[i] == 0){ phi[i] *= minDiv[i]; }else{ phi[i] *= (minDiv[i] - 1); } }}int main(){ int n; getphi(); while(cin >> n){ cout << phi[n] << endl; } return 0;}
0 0
- 求解欧拉函数值
- 欧拉函数值求解
- 快速求解欧拉函数
- HDU4556_欧拉函数求解法拉数列
- 欧拉回路求解
- poj 2478(快速求解欧拉函数优化版。。。)
- [1] 欧拉函数的一种求解方法
- 求解单个欧拉函数板子(O(sqrt(n)))
- 欧拉通路的求解
- 欧拉回路路径求解
- HDU4983 Goffi and GCD (欧拉函数求解gcd个数)
- C语言求解欧拉错位排列
- 求解欧拉回路的算法
- POJ 1041 求解欧拉回路方案
- 多米诺骨牌 欧拉回路的求解
- 欧拉回路求解 Fleury模板
- poj 1780 欧拉回路求解
- [模板]求解欧拉路径,欧拉回路
- POJ 1144
- Codeforces 302D
- Codeforces 14D
- 快速幂取模
- 扩展欧几里德
- 求解欧拉函数值
- 求解n位格雷码
- POJ 3009
- 转】OSAL内存管理2
- 最短路径----SPFA算法
- POJ 3013
- POJ 2570
- POJ 3126
- POJ 1088