




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)學(xué)知識-數(shù)論-質(zhì)數(shù)河南省實驗中學(xué)信息組質(zhì)數(shù)質(zhì)數(shù)的判定
數(shù)字約數(shù)3612346912183637137質(zhì)數(shù)的篩選
埃氏篩埃氏篩(Eratosthenes篩法)思想:任意正整數(shù)x的倍數(shù)2*x,3*x,?都不是質(zhì)數(shù)。從2開始遍歷每一個數(shù)x,如果它是質(zhì)數(shù),把它的倍數(shù)2x,3x,?,?n?x??x標記為合數(shù)。當掃描到一個數(shù)x時,若它尚未標記,則它不能被2~x?1之間的任何數(shù)整除,該數(shù)就是質(zhì)數(shù)。埃氏篩的時間復(fù)雜度:例如找出100內(nèi)所有素數(shù),如下圖:首先2的倍數(shù)篩去3的倍數(shù)篩去12又被篩了一次,某些數(shù)字有重復(fù)篩的問題。5的倍數(shù)篩去7的倍數(shù)篩去還需要繼續(xù)嗎?11*11=121超過了100歐氏篩歐氏篩(歐拉篩法/線性篩法)
經(jīng)過優(yōu)化后的埃氏篩仍會重復(fù)篩除合數(shù)。例如,12既會被2篩也會被3篩,這就出現(xiàn)了重復(fù)篩選;再例如,30被2、3、5各篩一次。問題:是否存在線性篩法,讓每個合數(shù)只篩一次?歐拉篩法就是一種線性篩法。
考慮:有什么辦法讓每個合數(shù)只被篩一次?我們知道合數(shù)可以質(zhì)因式分解,最小質(zhì)因子是唯一的,我們能不能讓每個合數(shù)被它的最小質(zhì)因子篩掉?以45以內(nèi)的所有數(shù)為例:質(zhì)數(shù):2、3、5、7、11、13、17、19、23、29、31、37、41、43合數(shù):4、6、8、9、10、12、14、15、16、18、20、21、22、24、25、26、27、28、30、32、33、34、35、36、38、39、40、42、44、45將所有合數(shù)分解成最小質(zhì)因子做被乘數(shù)的形式,確保被乘數(shù)小于等于乘數(shù)。被乘數(shù)相同的寫一行,如下:2*2、2*3、2*4、2*5、2*6、2*7、2*8、2*9、2*10、2*11、2*12、2*13、2*14、2*15、2*16、2*17、2*18、2*19、2*20、2*21、2*223*3、3*5、3*7、3*9、3*11、3*13、3*155*5、5*7、5*9問題:怎樣才能按照上面的順序進行篩?換個順序?qū)?,乘?shù)相同的寫一行,被乘數(shù)小于等于乘數(shù)2*22*3、3*32*42*5、3*5、5*52*62*7、3*7、5*72*82*9、3*92*102*11、3*112*122*13、3*132*142*15、3*152*162*17……2*22當乘數(shù)是被乘數(shù)的倍數(shù)時,停止篩除。3*4不會出現(xiàn),4中必有2這個因子,而2<3,會在2*6時篩除思路:以乘數(shù)作為循環(huán)變量i,如果i沒有被標記,i記入質(zhì)數(shù)表,質(zhì)數(shù)表中現(xiàn)有質(zhì)數(shù)與i乘積的數(shù)則為合數(shù),將其標記篩掉,注意當乘數(shù)是被乘數(shù)的倍數(shù)時停止i的處理,開始篩i+1為什么循環(huán)到n,而不是n/i?歐氏篩還有另外一種寫法設(shè)數(shù)組v記錄每個數(shù)的最小質(zhì)因子,即該數(shù)被哪個數(shù)篩,我們按照如下步驟維護v:
依次考慮2~N之間的每一個數(shù)i;如果v[i]=0,說明i未被篩過,即為質(zhì)數(shù),把它存下來,并令v[i]=i;如果v[i]≠0,掃描不大于v[i]的每個質(zhì)數(shù)p,令v[i*p]=p。因為p≤v[i],而p是從最小的質(zhì)數(shù)開始掃描的,所以p就是合數(shù)i?p的最小質(zhì)因子。因為每個合數(shù)i?p只會被他的最小質(zhì)因子p篩一次,時間復(fù)雜度為O(N)。算術(shù)基本定理質(zhì)因數(shù)分解質(zhì)因數(shù)分解
質(zhì)因數(shù)分解【例】PRIMEDISTANCE(COGS3478)給定兩個整數(shù)L,R(1≤L≤R≤231,R?L≤106),求閉區(qū)間[L,R]內(nèi)相鄰兩個質(zhì)數(shù)的差的最大是多少,輸出這兩個質(zhì)數(shù)。(輸入數(shù)據(jù)有多組)
輸入格式:多行,每行兩個整數(shù)L,R。輸出格式:多行,每行連個整數(shù)表示差最大的兩個質(zhì)數(shù)(小數(shù)在前,大數(shù)在后),如果有多組解輸出較小的,如果沒有解輸出“noadjacentprimes”。輸入樣例:輸出樣例:2177111417noadjacentprimes樣例解釋:2~17中的質(zhì)數(shù)有2、3、5、7、11、13、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025酒店內(nèi)部承包合同范本
- 2025詳盡包工不包料民事建筑合同范本
- 2025汽車銷售公司的購車合同模板
- 2025裝修油漆工程合同
- 2025合同范本防火門維修合同
- 護理部計劃的制定
- 2025福州影業(yè)公司版權(quán)許可合同
- 田園房屋租賃合同范本
- 電站用工器具的使用培訓(xùn)
- 學(xué)校臨時保潔用工協(xié)議書
- 花城版音樂課時2-第2課 兩首風格不同的臺灣民謠-《放紙鷂》-課件
- 馬原第七章共產(chǎn)主義崇高理想及其最終實現(xiàn)
- 壓電陶瓷完整版課件
- 獲獎QC小組活動-提高苗木栽植成活率
- 青島版科學(xué)(2017)六三制六年級下冊14.《有趣的碰碰球》教學(xué)課件
- GB/T 36876-2018中小學(xué)校普通教室照明設(shè)計安裝衛(wèi)生要求
- GB/T 14273-1993旋轉(zhuǎn)軸唇形密封圈性能試驗方法
- GB 13326-1991組合式空氣處理機組噪聲限值
- 質(zhì)量整改回執(zhí)單
- 2023年廣東省中學(xué)生生物學(xué)聯(lián)賽試題解析(word)及答案(掃描版)
- 青海省干部履歷表
評論
0/150
提交評論