求尤拉函式值 打表O n

2021-09-25 09:12:51 字數 2445 閱讀 3273

在數論,對正整數n,尤拉函式是1~n的數中與n互質的數的數目,我們記為φ(n

)φ(n)

φ(n)

,(後面尤拉定理中會用到)。此函式以其首名研究者尤拉命名。例如φ(8

)=4φ(8)=4

φ(8)=4

,因為1,3,5,7均和8互質。

φ (n

)φ(n)

φ(n)

求解公式:

現假設n

nn有r

rr個質因子p1、p2、p3、、、pr,則:

尤拉函式的兩個性質:來自尤拉函式及其證明(這兩個性質可以推出上面的公式)

1、單獨求某個尤拉函式值**:o(n

)o(\sqrt)

o(n​

)

intfn(

int x)}if

(x>1)

ans-

=ans/x;

return ans;

}

2、埃氏篩、尤拉篩

⟹   

\implies

⟹質數打表———埃氏篩&&尤拉篩

2.1 求1~n的尤拉函式值:o(n

logl

ogn)

o(nloglogn)

o(nlog

logn

)//埃氏篩法中每個合數會被它的每個質因子篩一遍,就完美地求出尤拉函式值了

bool vis[manx]

;void

make_prime

(int n)}}

}

2.2 求1~n的尤拉函式值:o(n

)o(n)

o(n)

原理:以下證明來自尤拉線性篩(篩質數,求尤拉函式)pp:

性質1:φ(p

)=p−

1φ( p)=p-1

φ(p)=p

−1;因為p為質數,而從1到p

pp,只有p

pp與p

pp自本身不互質,其餘的(p−

1)(p-1)

(p−1

)個數字都與p

pp互質,因此得出性質1;

性質2:對於i

ii%p==

0,φ(

i∗p)

=p∗φ

(i)p==0 , φ(i * p)=p * φ(i)

p==0,φ

(i∗p

)=p∗

φ(i)

;性質3:對於i

ii%p!=

0p ! = 0

p!=0

, φ (i

∗p)=

φ(i)

∗(p−

1);φ (i * p) = φ(i) * (p-1);

φ(i∗p)

=φ(i

)∗(p

−1);

利用了尤拉函式的積性。而又通過性質1可知,p−1

=φ(p

)p-1=φ( p)

p−1=φ(

p),因此φ(i

∗p)=

φ(i)

(p−1

)=φ(

i)∗φ

(p)φ(i*p)=φ(i)(p-1)=φ(i)*φ ( p)

φ(i∗p)

=φ(i

)(p−

1)=φ

(i)∗

φ(p)

;這個,本人才疏學淺,看了各種證明,但還是不明白性質2,性質3是怎麼得出來的,所以先當作結論記住吧。

知道了這三個結論之後,在配合尤拉篩篩質數,就可以得出範圍內所有的數字的尤拉函式。

2020.7.19對性質2的理解:對於i%p

==0i\%p==0

i%p==0

(即p也是i的因子),與i互質的數肯定與 i*p互質。比如i=35,p=5時,與i互質的數有1,2,3,4,6…那麼這些數肯定也與35 *5互質,而且將這些數分別加上35(或35 *2,35 *3,35 *4)後可以發現它們還是與35 *5互質,所以與35 *5的數的個數為φ(35) *5

**:

void

make_prime

(int n)

for(

int j=

0; j

)else

ans[i*prime[j]

]=ans[i]

*ans[prime[j]];

//改動部分3(對應性質3)

//或者寫成ans[i*prime[j]]=ans[i]*(prime[j]-1);}}

}

例題:farey sequence

感想:質因子是個神奇的存在

尤拉公式求函式值

問題描述 利用尤拉公式,求解y 1 1 x2 2y2,當y 0 0,h 0.5時,其在0 x 4時的結點值,精確到小數點後四位。問題分析 尤拉公式推導 當dy dx f x,y 且y x0 y0時,可推導出切線方程的遞推公式,即 yi 1 yi f xi,yi xi 1 xi 和xi x0 ih 且...

尤拉函式及其快速打表

下面的大部分都是借鑑這位大佬的,加了點自己的理解。我就比較懶,直接貼 了。講解都在注釋中 尤拉函式的作用 用於求小於n的與n互質數的個數 尤拉函式的公式 n n 1 1 p1 1 1 p2 1 1 p3 1 1 p4 1 1 pn 其中p1,p2 pn為n的所有質因數,n是不為0的整數。1 1 唯一...

求尤拉函式

3.尤拉函式 對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目 顯然對素數n,phi n n 1 通式 x x 1 1 p1 1 1 p2 1 1 p3 1 1 p4 1 1 pn 其中p1,p2 pn為x的所有質因數,x是不為0的整數。1 1 唯一和1互質的數就是1本身 很簡單,就不寫 ...