欧拉函数

    技术2022-05-13  27

    欧拉函数:

     

    #include <iostream>

    using namespace std;

    int eular(int n) {

           int ret = 1, i; 

           for (i = 2; i * i <= n; i++)

      {

               if (!(n % i)) {

                      n /= i;

                      ret *= i - 1;

                      while (!(n % i)) 

     n /= i,  ret *= i;

                }

      }

            if(n > 1) 

    ret *= n - 1;

           return ret;

    }

    int main()

    {

    int n=30;

     

    int k;

    k=eular(n);

    cout<<k<<endl;

    return 0;

    }


    最新回复(0)