hdu2588(欧拉函数)
来源:互联网 发布:贾巴尔数据 编辑:程序博客网 时间:2024/06/05 11:50
给定N,M(2<=N<=1000000000, 1<=M<=N), 求1<=X<=N 且gcd(X,N)>=M的个数。
首先,gcd(x,n)一定是n的约数,且gcd>m那么就枚举n大于m的约数算就行,就是phi【n/d】,
注意,不能直接phi【n/m】因为m不一定是n的约数!!!!!!
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<cstdlib>#include<cctype>using namespace std;typedef long long ll;int n,m;int phi(int n){if (n==1) return 1;int ans=n,sq=(int)sqrt(n);for (int i=2;i<=sq;i++)if (n%i==0){ans=ans/i*(i-1);while (n%i==0) n/=i;}if (n>1) ans=ans/n*(n-1);return ans;}int main(){int T;scanf("%d",&T);while (T--){scanf("%d%d",&n,&m);int ans=0;for (int i=1;n/i>=m;i++)if (n%i==0){ans+=phi(i);}printf("%d\n",ans);}return 0;}
0 0
- hdu2588(欧拉函数)
- hdu2588欧拉函数
- hdu2588(欧拉函数)
- (hdu2588)GCD(欧拉函数)
- hdu2588 GCD(欧拉函数)
- hdu2588 GCD (欧拉函数)
- hdu2588(欧拉函数的应用)
- hdu2588 GCD(欧拉函数)
- Hdu2588 GCD 欧拉函数
- [HDU2588]GCD 欧拉函数
- 20160321 HDU2588 GCD(欧拉函数+枚举)
- 欧拉函数之HDU2588 GCD
- hdu2588——GCD(欧拉函数)
- HDU2588 GCD 欧拉函数简单应用
- 周中训练笔记+hdu2588+3501【欧拉函数】
- hdu2588 GCD(数论:欧拉定理)
- [HDU2588]GCD(数论)
- 51nod - 1136 欧拉函数(欧拉函数)
- 纯真IP数据库格式详解
- 融云在移动端获取token(swift)版
- 安装myeclipse
- Java知识点25
- EXCEL-VBA:根据单元格字体、背景颜色计数、求和
- hdu2588(欧拉函数)
- 在Linux平台上搭建EasyDarwin,编译代码并简单部署
- Java关键字之this
- ZooKeeper详解及工作原理
- 从Internet上抓取指定URL的源码的方案(C#)
- Cmake不是内部或外部命令
- css
- CodeForces 598A Tricky Sum
- 如何设计或优化千万级别的大表