1. 程式人生 > >數論學習筆記 尤拉函式 (一些性質和運用)內建杜教篩

數論學習筆記 尤拉函式 (一些性質和運用)內建杜教篩

定義

在數論中,對正整數n,尤拉函式是小於等於n的數中與n互質的數的數目。並且用符號φ(n)表示一個整數的尤拉函式。例如φ(8)=4。特殊的φ(1)=1

一些尤拉函式的性質

性質一

對於一個質數n,φ(n)=n1
證明:
因為n是質數。

性質二

n=pk,則φ(n)=pkpk1=(p1)pk1
證明:
因為除了p的倍數外,其他數都跟n互質。

性質三

gcd(n,m)=1時,φ(nm)=φ(n)φ(m)
證明:
φ(n)是積性函式。

性質四

n=pk11pk22...pkmm,則φ(n)=n(11p1)(11p2

)...(11pm)
證明:
根據性質二

φ(n)=(pi1)pki1i(pi|n)=n(11p1)(n)
當然也可以用容斥的想法去理解。

性質五

尤拉定理:對於互質的整數a,maφ(m)1(modm)
證明:
這小於n且與n互質的集合時Z,顯然|Z|=φ(n)Z={p1,p2...pφ(n)}。
令集合S={ap1modn,ap2modn...apφ(n)modn}。
因為:
1. 因為an互質,pin互質,所以apin互質,所以ap1modnZ

2. 若ij,那麼apimodnapjmodn
反證:
假如a

pimodn=apjmodn ,設api=kin+b
那麼

api=kin+b

相關推薦

數論學習筆記 函式 一些性質運用

定義 在數論中,對正整數n,尤拉函式是小於等於n的數中與n互質的數的數目。並且用符號φ(n)表示一個整數的尤拉函式。例如φ(8)=4。特殊的φ(1)=1。 一些尤拉函式的性質 性質一 對於一個質數n,φ(n)=n−1。 證明: 因為n是質數。

函式 數論 + 唯一分解定理

尤拉函式 初步認識: 在數論,對正整數n,尤拉函式是小於n的正整數中與n互質的數的數目(φ(1)=1)。此函式以其首名研究者尤拉命名(Euler's totient function),它又稱為Euler's totient function、φ函式、尤拉商數等。 例如φ

hiho 1298 數論·五 函式 函式篩選板子

描述 小Hi和小Ho有時候會用密碼寫信來互相聯絡,他們用了一個很大的數當做金鑰。小Hi和小Ho約定了一個區間[L,R],每次小Hi和小Ho會選擇其中的一個數作為金鑰。 小Hi:小Ho,這次我們選[L,R]中的一個數K。 小Ho:恩,小Hi,這個K是多少啊? 小Hi:這個K嘛,不如這一次小Ho你自己想辦法

HDU 5728 PowMod數論函式的各種性質

[題意] k=∑i=1mϕ(i∗n)%1000000007 其中n為無平方因子的數,求 ans=kkkk...k%p [分析] n無平方因子說明n可以表示為n=p1∗p2∗...∗pl

【hdu 5728 PowMod】【數論】【函式】【降冪遞迴取模】【積性函式

【連結】 http://acm.hdu.edu.cn/showproblem.php?pid=5728 【題意】 n是無平方因子的數 定義k=∑mi=1φ(i∗n) mod 1000000007,求K^k^k^k......%p 【思路】 先尤拉性質求出k

函式模板

#include <iostream> #include <cmath> using namespace std; int oula(int n) { int ans=n; int i; for(i=2;i<=sqrt(n);i++) {

Python學習筆記系列——高階函式map/reduce

一、map #變數可以指向函式,函式的引數能接受變數,那麼一個函式就可以接受另一個函式作為引數,這種函式被稱之為高階函式 def add(x,y,f): return f(x)+f(y) print(add(-5,-9,abs)) ''' map()函式接受兩個引數,一個是函式,

Python學習筆記系列——高階函式filter/sorted

一、filter #filter()函式用於過濾序列。和map()類似,也接收一個函式和一個序列,把函式依次作用於每個元素,根據返回值是True還是False決定是否保留該元素。 #filter()函式返回的是一個Iterator,即惰性序列,所以要強迫filter()完成計算結果,需要用list(

Opencv學習筆記:addWeighted函式影象融合

addWeighted函式 融合圖片尺寸不變 1、函式作用 作用:實現兩幅圖片的(疊加)線性融合; 2、函式原型 void addWeighted(InputArray src1, double alpha, InputArray src2, doubl

2018.12.17【BZOJ4802】函式Pollard-Rho

傳送門 解析: 對於 n = ∏

【C++學習筆記】虛擬函式

虛擬函式與過載函式的關係 我們現在來比較一下規則比較多的虛擬函式和規則比較少的過載函式之間的差別: 普通函式過載時,其函式的引數個數或者引數型別必須有所不同,函式的返回型別也可以不同。(這個不同是比較嚴格的不同,是涉及本質的) 過載函式: 要求函式名、返回型別、引

【C++學習筆記】虛擬函式

12.3 昨天居然斷更了,唉,寫部落格真是很需要毅力呀,更新上今天的學習筆記。 上次我們講到多型性的定義以及簡述了實現方式以及靜態編譯和動態編譯的概念。這次,我們來具體講一講虛擬函式。 什麼是虛擬函式 在某基類中宣告為 virtual 並在一個或多個派生類中被重新定義的成

【hdu 5728 PowMod】【數論】【函式】【降冪遞迴取模】【積性函式

【連結】 【題意】 n是無平方因子的數 定義k=∑mi=1φ(i∗n) mod 1000000007,求K^k^k^k......%p 【思路】 先尤拉性質求出k,再用尤拉降冪,A^B=A^B%phi(C)+phi(C)  (mod C)求出答案 ∑(i=1~

函式總結

尤拉函式 定義 尤拉函式ϕ(n)是不超過n且和n互質的正整數的個數。尤拉函式φ(n)的作用就是轉化,從而簡化運算(小性質:n的所有質因子之和=eular(n)*n/2); 下面直觀地看看尤拉函式: n 1 2 3 4

hdu3501 函式或容斥原理莫比烏斯函式

題目連結:http://acm.hdu.edu.cn/showproblem.php?pid=3501 題解1:顯然,本體可以用容斥原理,求出每個數的倍數情況,其係數就是莫比烏斯函式。 題解2:對於整

函式提供1到N中與N互質的數

當個板子放著,具體是看了這篇部落格:尤拉函式求法與應用 尤拉函式用希臘字母φ表示,φ(N)表示N的尤拉函式. 對φ(N)的值,我們可以通俗地理解為小於N且與N互質的數的個數(包含1). //直接求解尤拉函式 int euler(int n){ //返回euler(n

TensorFlow學習筆記之——常用函式概覽

本文章內容比較繁雜,主要是一些比較常用的函式的用法,結合了網上的資料和原始碼,還有我自己寫的示例程式碼。建議照著目錄來看。1.矩陣操作1.1矩陣生成這部分主要將如何生成矩陣,包括全0矩陣,全1矩陣,隨機數矩陣,常數矩陣等tf.ones | tf.zeros tf.ones(

函式求與n互質的數的個數

求解與n(1-n-1)互質的質因子的個數 解析:(轉) 定義:對於正整數n,φ(n)是小於或等於n的正整數中,與n互質的數的數目。     例如:φ(8)=4,因為1,3,5,7均和8互質。 性質:1.若p是質數,φ(p)= p-1. 2.若n是質數p的k

聽課筆記第五講學習的可行性分析一些概念思想 (臺灣國立大學機器學習基石

Training versus Testing1,回顧:學習的可行性?最重要的是公式: (1) 假設空間H有限(M),且訓練資料足夠大,則可以保證測試錯誤率Eout 約等於訓練錯誤率Ein;(2)如果能得到Ein 接近於零,根據(1),Eout 趨向於零。以上兩條保證的學習的可能性。可知,假設空間H 的

5728 PowMod 函式降冪+數學推倒

ans=kkkk.點選打 思路: 很不錯的一個題目,知道求出k之後尤拉降冪遞迴可求,但是仍然無法再符合條件的時間內求出k,化簡了一些式子. 根據尤拉函式的性質可以分成i和