同模取餘
基本性質
費馬小定理
證明
除法逆元
威爾遜定理
證明
若
若
對於所有的整數
得:
當
即
即:
歐拉函數
若
性質
小於n與n互素的正整數的和:
直接求歐拉值\打標
int get_Euler(int n) //直接求值 euler(n) = n * (1 - 1/p1) * (1 - 1/p2)*...*;
{
int tmp = n, ans = n;
for (int i = 2; i * i <= tmp; i++)
{
if (tmp % i == 0)
{
ans = ans / i * (i - 1);
while (tmp % i == 0)
{
tmp /= i;
}
}
}
if (tmp > 1)
{
ans = ans / tmp * (tmp - 1);
}
return ans;
}
int euler[N];
void init_Euler() //打表
{
euler[1] = 1;
for (int i = 2; i < N; i++)
{
euler[i] = i;
}
for (int i = 2; i < N; i++)
{
if (euler[i] == i)
{
for (int j = i; j < N; j += i)
{
euler[j] = euler[j] / i * (i - 1);
}
}
}
}