欧拉函数-数论
2018-03-12 17:52
162 查看
欧拉函数φ(N)表示小于或等于N的正整数中与N互质的数的个数。
欧拉函数具有如下的几个性质:
代码:
应用——求解原根的个数:
什么是原根呢?
假如
原根的个数等于φ(φ(N))
欧拉函数具有如下的几个性质:
代码:
int phi(int n)//<=n(n!=1时是<n)的且与n互质的数的个数 { int ans; if(n == 1)//特判n=1的情况 ans = 1; else//其他情况,根据公式 φ(n) = n(1-1/p1)(1-1/p2)..(1-1/pk) (pi为质因子)来计算 { ans = n; for(int i = 2; n != 1; i++)//当n的质因数分解完成时退出循环 if(n % i == 0) { ans = ans / i;//不能直接写为*(1-1/i) ans = ans * (i - 1);//不能直接写为*(1-1/i) while(n % i == 0)//把质因数i从n中剔除 n = n / i; i = 1;//将i置为1,之后执行i++,i成了2 } } return ans; } 也有用素数筛预处理的写法
应用——求解原根的个数:
什么是原根呢?
假如
a^i mod b的结果两两不同,且有
1<a<b,1<i<b,那么a就是b的一个原根。
原根的个数等于φ(φ(N))
相关文章推荐
- 数论继续学习7---欧拉函数的证明及代码实现
- BZOJ 2226: [Spoj 5971] LCMSum(数论+欧拉函数)
- hdu - GCD -欧拉函数 & GCD原理 - 数论
- POJ2478 Farey Sequence 欧拉函数与素数 数论题
- 【HDU5728 2016 Multi-University Training Contest 1F】【数论+迭代 欧拉函数线性筛+积性递归】PowMod 欧拉函数积性性质+无穷幂迭代
- 【数论内容】线性筛素数,线性筛欧拉函数,求前N个数的约数个数
- 洛谷 2158 数论 打表 欧拉函数
- UVa 11440 Help Tomisu (数论欧拉函数)
- POJ2478 Farey Sequence 数论,欧拉函数
- 数论之素数,包括eratosthenes算法,欧拉函数
- hdu1787 GCD Again(数论:欧拉函数)
- poj 3090 Visible Lattice Points(数论:筛法打表欧拉函数)
- 20140925 【 初等数论--欧拉函数 】 UVa 10214 - Trees in a Wood
- 数论——欧拉函数
- 数论-欧拉函数与欧拉定理
- 数论 day 2 CRT 素数筛 逆元 欧拉函数 (板子)
- BZOJ 3884(上帝与集合的正确用法-欧拉函数递推找极限)[Template:数论 V2]
- 51Nod_P1239 欧拉函数之和(数论+杜教筛+欧拉函数+哈希+快速乘)
- POJ2480——Longge's problem(数论,欧拉函数d)
- UVA 10820 - Send a Table 数论 (欧拉函数)