HDU1787 GCD Again【欧拉函数】
来源:互联网 发布:陕西广电网络待遇 编辑:程序博客网 时间:2024/05/19 04:04
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=1787
题目大意:
给你一个整数N,求范围小于N中的整数中,与N的最大公约数大于1的整数的个数。
思路:
典型的欧拉函数变形。欧拉函数φ(N)是用来求小于N的整数中,与N的最大公约数为1的数的个数。
那么此题的答案ans = N - φ(N) - 1。
AC代码:
#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>using namespace std;int Euler(int n){ int ret = n; for(int i = 2; i*i <= n; ++i) { if(n % i == 0) { n /= i; ret = ret - ret/i; } while(n % i == 0) n /= i; } if(n > 1) ret = ret - ret/n; return ret;}int main(){ int n; while(~scanf("%d",&n) && n) { printf("%d\n",n-Euler(n)-1); } return 0;}
0 0
- hdu1787 GCD Again(数论:欧拉函数)
- HDU1787 GCD Again【欧拉函数】
- hdu1787 GCD Again 欧拉函数在线算法 待补完
- hdu1787——GCD Again(欧拉函数入门)
- (hdu1787)GCD Again(欧拉函数)
- 欧拉函数:HDU1787-GCD Again(欧拉函数的模板)
- HDU1787 GCD again 欧拉公式 的运用
- hdu1787-GCD Again
- hdu1787-GCD Again
- hdu1787 GCD Again
- HDU1787 GCD Again
- hdu1787(欧拉函数)
- HDU1787——GCD Again
- GCD Again(欧拉函数)
- hdu 1787 GCD Again 欧拉函数
- HDU 1787 GCD Again 欧拉函数
- hdu GCD Again(欧拉函数)
- HDOJ GCD Again 1787【欧拉函数】
- MongoDB 2.2 的 Time To Live (TTL) 集合
- 程序员技术练级攻略,有多少你是知道呢?
- Valid Palindrome有效回文
- Kali配置SSH及开机自启
- 进程和线程的区别
- HDU1787 GCD Again【欧拉函数】
- 多数据源的配置方式(mysql和oracel)
- 虚拟机下安装64位操作系统的, 出现了报错信息怎么解决?
- error C2146: 语法错误 : 缺少“;”(在标识符“PVOID64”的前面)
- 高效程序员保持快乐活跃的6个好习惯
- 父窗口和子窗口
- android应用安装流程(备忘)
- 快速排序 QuickSort
- .net C# 学习笔记