nyoj-479-Coprimes
来源:互联网 发布:java final 数组 编辑:程序博客网 时间:2024/05/02 11:05
//法一
#include<stdio.h>
int eular(int n)
{
int i,m=n,t=0;
for(i=2;i*i<=n;i++)
if(n%i==0)
{
t=1;
n/=i;
m=m-m/i;
while(n%i==0)
{
n/=i;
}
}
if(t==1&&n>1) return m-m/n;
else if(t==1||n==1) return m;
return n-1;
}
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",eular(n));
}
return 0;
}
//法二
#include<stdio.h>
int eular(int n)
{
int i,m=1;
for(i=2;i*i<=n;i++)
if(n%i==0)
{
n/=i;
m*=i-1;
while(n%i==0)
{
n/=i;
m*=i;
}
}
if(n>1)
m*=n-1;
return m;
}
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",eular(n));
}
return 0;
}
- NYOJ 479 Coprimes
- NYOJ 479题 Coprimes
- NYOJ 479 Coprimes
- nyoj-479-Coprimes
- NYOJ-479 Coprimes【欧拉函数】
- Coprimes
- SGU102 Coprimes
- sgu102:Coprimes
- 102. Coprimes
- SGU102 Coprimes
- SGU102 Coprimes
- SGU102 Coprimes
- SGU102 Coprimes
- [SGU]102. Coprimes
- Sgu 102. Coprimes
- sgu 102 Coprimes 互质
- SGU 102 - Coprimes(简单)
- UVa10637 - Coprimes(DFS,GCD)
- 8个Linux技巧
- 链表操作:创建,插入,排序,反转
- 人大代表建议取消“三本”改为职业教育
- 微信公众号如何成为粉丝1万大v
- Qt学习---7
- nyoj-479-Coprimes
- source insight快捷键及使用技巧
- JAVA_集合总结之Collection——Set
- UML统一建模语言(三)Rational rose和visio
- 一段破代码,对SSL异步编程感兴趣的同学有福了, 欢迎高手指正使用错误
- Visual Studio 2010下配置PC-Lint 9.0i
- java中jsp文件http通信注意的几点问题
- linuxmini2440I2S驱动
- 设计模式_责任链模式