求单个欧拉函数模板,HDU 1787
2013-08-13 21:39
323 查看
http://acm.hdu.edu.cn/showproblem.php?pid=1787
模板,就是还有点蒙
View Code
模板,就是还有点蒙
#include<stdio.h> #include<math.h> int gcd(int n)//这里可以直接利用欧拉函数的性质:小于n并与n互质的数的个数 { int i,j,ans=n; for(i=2;i<=sqrt(n);i++)//i的范围是这些,判断n是否是质数时就是判断到sqrt(n)就可以。这里跳出循环可以判断n已经是1或者质数了 if(n%i==0) { ans=ans/i*(i-1); while(n%i==0)n/=i;//这里可以保证i一定会是素数,因为下次出现i的倍数的时候不会进去这个循环 } if(n>1)ans=ans/n*(n-1);//有可能除到最后 本身还是一个质因子 return ans; } int main() { int n; while(scanf("%d",&n),n) printf("%d\n",n-1-gcd(n)); return 0; }
View Code
相关文章推荐
- HDU 1787 GCD Again/HDU 2824 The Euler function(欧拉函数模板)
- HDU 1787 欧拉函数模板
- 算法模板——单个值欧拉函数
- hdu 2824欧拉函数(晒法模板)
- hdu1787欧拉函数(计算单个欧拉函数值模板)
- 【数学基础】【欧拉函数解析模板】【欧拉筛法实现求1~n】【求单个n】
- hdu 1787(欧拉函数)
- HDU 1787(欧拉函数)
- 欧拉函数 hdu 1787
- hdu 1787 GCD Again (欧拉函数)
- hdu 2824 The Euler function 欧拉函数模板题
- HDU 4983 Goffi and GCD(欧拉函数模板)
- HDU 5597 GTW likes function(规律+欧拉函数模板题)——BestCoder Round #66(div.1 div.2)
- HDU 1787 简单的求欧拉函数 POJ 2047 裸欧拉函数
- HDU 1787 GCD Again (欧拉函数)
- http://acm.hdu.edu.cn/showproblem.php?pid=1787 典型 欧拉函数(为何c++ 那样会RE)
- HDU 1787 欧拉函数
- HDU 1787 GCD Again (欧拉函数)
- 【hdu - 1787 GCD Again (数论、欧拉函数)】
- HDU 1787 GCD Again 欧拉函数