[置顶] HDU 1286 欧拉函数。
欧拉乃真神人不知道怎样证明的 。 其实题意就是这个:在数论,对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。 例如φ(8)=4,由于1,3,5,7均和8互质。 从欧拉函数引申出来在环论方面的事实和拉格朗日定理构成了欧拉定理的证明。 找出和m互质的。 上代码吧。 #include<string.h>
#include <stdio.h>
int g[32770];
int ouler(int x)
{
int i,k=1;
int m=x;
for(i=2;i<=m;i++)
{
if(m%i==0)
{
k=k*(i⑴);
while(m%i==0)
{
m=m/i;
k*=i;
}
k/=i;
}
}
return k; //以上是查资料写出的,至于为何是这样的由于证明实在看不懂,我不知道。
}
int main()
{
int ncase,m;
scanf("%d",&ncase);
while(ncase--)
{
scanf("%d",&m);
printf("%d
",ouler(m));
}
return 0;
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |