找最小质数表示才能套用所有数字.PPT

找最小质数表示才能套用所有数字.PPT

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
找最小质数表示才能套用所有数字

1 * 10168: Summation of Four Primes ★★★★☆ 題組:Problem Set Archive with Online Judge 題號:10168: Summation of Four Primes 解題者:陳理琦 解題日期:2014年5月22日 題意:給定多組測資,將每個測資 N (N =拆成四個質數的和(可以重複且不需排序),但每個測資可能有一組以上的答案,輸出任一種解皆可,若無法拆成四個質數的和則輸出Impossible.“ 題意範例: 24 ? 3 11 3 7 or 2 2 3 17 or 3 3 5 13… 36 ? 3 7 13 13 or 2 2 3 29 or 3 5 5 23… 46 ? 11 11 17 7 or 2 2 5 37 or 2 2 11 31… 11 ? 2 3 3 3 or 2 2 2 5 * 解法:先建立一個質數表。在哥德巴赫猜想中提到:任一大於等於4的偶數,都可以表示成兩個質數的和。本題是要將某數表示成四個質數的和,所以,若是奇數要拆成”奇數(之後再拆解必有2)+偶數”,偶數則要拆成”偶數+偶數”,偶數的部分就可以再套用哥德巴赫猜想表示。 為了減少時間複雜度,我們可以先判斷出小於8的數字必不能表示成四個質數的和(最小質數為2,2+2+2+2=8) 再拆成奇數和偶數來討論: ↓ 找最小質數表示才能套用所有數字 奇數:2+3+偶數 (奇數+偶數) 偶數:2+2+偶數 (偶數+偶數) X X 解法範例: 以24( 8)為例,先拆成2+2+20,再對20做拆解: 質數x 2 3 20-x 18 17 output : 2 2 3 17 以11( 8)為例,先拆成2+3+6,再對6做拆解: 質數x 2 3 6-x 4 3 output : 2 3 3 3 討論: (1)建立質數表的方法-埃拉托斯特尼(Eratosthenes)篩法: Step1:先假設範圍內所有的整數都是質數(除了 1) Step2:從2開始找尋質數,將除了自己以外所有小於 N 的倍數標記為合數 Step3:再換成3,5,7… √ N,將倍數標記為合數,最後所有合數都將被標記 注意:比如說在刪掉3的倍數的時候,3的2倍已經在篩檢2倍數的時候記為合數,因此是以3*3 , 3*3+ 1*2*3, 3*3+2*2*3…篩掉 * (2)將一偶數表示成兩質數的找法: 在建立質數表的時候可以建立下面兩種 1.標記是否為質數 0 1 2 3 4 5 6 7 8 9 10 11 12 13 … 0 0 1 1 0 1 0 1 0 0 0 1 0 1 … 2.記錄所有質數 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 … ?在找尋質數的時候可以減少時間複雜度 * * * 1 * *

文档评论(0)

fengruiling + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档