欧拉定理-不会

欧拉函数:

   ——\(\varphi(n) = \sum_{i = 1}^{n}[gcd(i,n)==1]\)

   ——也就是求出小于n且与n互质的正整数的数量

Euler函数代码:

//输入数据有限,且n的上限高
int euler(int n)
{
    int res = n, a = n;
    for (int i = 2; i * i <= a;i++)
    {
        if(a % i == 0)
        {
            res = res / i * (i - 1);
            while(a % i == 0) a /= i;
        }
    }
    if(a > 1) res = res / a * (a - 1);
    return res;
}
View Code

欧拉定理:

   ——对于\(\forall a,m,\) 若\(gcd(a,m) = 1\),则

   ——\(\forall n,a^{n}\equiv a^{n \; mod \; \varphi(m)}(mod \; m)\)

广义欧拉定理:

   ——对于\(\forall a,m,\)若\(gcd(a,m) = 1\),则

   ——\(a^n \equiv a^{n \; mod \; \varphi(m)}(mod \; m),(n < \varphi(m)\)

   ——\(a^n \equiv a^{n \; mod \; \varphi(m) + \varphi(m)}(mod \; m),(n >= \varphi(m)\)

posted @ 2019-09-23 18:20  Cyan_Cloud  阅读(84)  评论(0)    收藏  举报