欧拉函数 求小于某个数并与其互质的数的个数

欧拉函数 求小于某个数并与其互质的数的个数
 1 const int maxn=32790;

 2 int euler[maxn+2];

 3 void make()

 4 {

 5     euler[1]=0;

 6     for(int i=2;i<=maxn;++i)

 7         euler[i]=i;

 8     for(int i=2;i<=maxn;++i)

 9         if(euler[i]==i)

10             for(int j=i;j<=maxn;j+=i)

11                 euler[j]=euler[j]/i*(i-1);

12 }
View Code

euler[n]代表的就是在n之前与n互质的数的个数

你可能感兴趣的:(函数)