久久久国产一区二区_国产精品av电影_日韩精品中文字幕一区二区三区_精品一区二区三区免费毛片爱

 找回密碼
 注冊會員

QQ登錄

只需一步,快速開始

搜索
查看: 5487|回復: 11

一道數學編程題:有興趣的來試試

[復制鏈接]
1#
發表于 2015-11-12 22:19:41 | 只看該作者 |倒序瀏覽 |閱讀模式
我們稱197為一個循環質數,因為它的所有輪轉形式: 197, 971和719都是質數。
8 _  }, B9 q" B9 G* O8 }5 }100以下有13個這樣的質數: 2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, 和97.$ m; M+ n( w6 M3 _
100萬以下有多少個循環質數?. y$ g, Z: ~# ^  `# u7 m
能否更進一步,算出這些循環質數分別為多少?
& q) Z" g4 C- M/ O$ N' L
$ W2 d9 V8 J/ I& m9 a8 l$ o% P' H. S% P# g8 M, b( \/ Q' V! h
回復

使用道具 舉報

2#
發表于 2015-11-12 23:29:02 | 只看該作者
是需要所有輪轉形式都為質數么?+ c$ y: m5 Q) b

. s$ K2 K2 }2 H! t- h. P) \也就是說判斷一個質數是否為循環質數時,組成的數字里面不能有2、4、6、8、0?" E6 k: \$ P6 t' k, {* V

點評

大于1位數不能有5  發表于 2015-11-13 00:09

評分

參與人數 1威望 +1 收起 理由
冷水黃金 + 1 思想深刻,見多識廣!

查看全部評分

3#
 樓主| 發表于 2015-11-13 06:30:58 | 只看該作者
fwsc 發表于 2015-11-12 23:29
" @, g: `+ `$ X0 c$ Z) a是需要所有輪轉形式都為質數么?. \+ o  ~  M% q9 x
$ n0 c$ M6 h& E% Q- r' W5 K
也就是說判斷一個質數是否為循環質數時,組成的數字里面不能有2、4、6、 ...
0 h5 j4 l/ b( N4 v/ u! P% K
說的對,但是這個只是必要條件而已,按照它篩選出來的數還是非常多,事實上,符合條件的就幾十個而已
% L! v5 S6 m# c/ [& q' l
4#
發表于 2015-11-13 09:37:29 | 只看該作者
179,197,719,791,917,971, 不是6個這樣的數么?你這個輪轉的定義是什么?

點評

這個輪轉的意思不是所有數的組合排列,而是有一定順序的  發表于 2015-11-13 10:16
這個輪轉的意思不是所有數的組合排列,而是有一定順序的  發表于 2015-11-13 10:16
5#
 樓主| 發表于 2015-11-13 10:14:48 | 只看該作者
陽光小院暖茶 發表于 2015-11-13 09:37
0 G" {/ `! _/ [  {2 v8 G179,197,719,791,917,971, 不是6個這樣的數么?你這個輪轉的定義是什么?

7 s- w/ K; M7 c主貼例子已經很清楚了,比如123這個數,它的輪轉數是123,231,312,比如17的輪轉數是17,71,5的輪轉數就他本身一個$ i5 }& Z: o0 e
5 U3 w; B  ]1 u
6#
發表于 2015-11-13 10:17:58 | 只看該作者
這樣行不?假設要得出一百萬以內的所有輪轉形式為素數的素數,
0 y$ u1 p, h! n! V第一步,得到一張一百萬以內的素數表;8 s/ A' m9 O) v
第二步,大于一位的素數,如果它含有0,2,4,6,8,5,就把它剔除,得到一張更精簡的一百萬以內的素數表;
. Q: \/ z" A4 a- @第三步,逐一檢查第二張素數表的素數,看它的所有輪轉形式是否為素數( S, Q; b2 t, z) W, f% G; q
哈哈,這個思路太簡單了

點評

晚上我回去把你的思路做成程序,應該是可以秒出結果的  發表于 2015-11-13 12:51
晚上我回去把你的思路做成程序,應該是可以秒出結果的  發表于 2015-11-13 12:51
晚上我回去把你的思路做成程序,應該是可以秒出結果的  發表于 2015-11-13 12:50
這個思路完全可行,而且計算量也相當少,很不錯,另外其實可以把所有數子加起來可以被3整除的也一起剔除,這樣計算量會更少  發表于 2015-11-13 12:49
7#
發表于 2015-11-13 13:19:59 | 只看該作者
你的這個剔除沒必要,因為數字之和能被3整除的話,它就不會出現在第一張素數表中了。一百萬以內的素數有78,498個(百度),輪轉素數條件挺苛刻的,我猜不超過500個。但是具體怎么編程我不會,有難度,你要是做出來了的話,把結果貼出來欣賞欣賞哈。
8#
 樓主| 發表于 2015-11-13 14:13:12 | 只看該作者
陽光小院暖茶 發表于 2015-11-13 13:19
1 L' q4 f% Q. M# f你的這個剔除沒必要,因為數字之和能被3整除的話,它就不會出現在第一張素數表中了。一百萬以內的素數有78, ...
  f, `* F/ ~: l* W( o
我早就做出來了,一共55個,代碼今天回去分享給你
0 n; k6 i1 C) n5 J% a  z% U
9#
 樓主| 發表于 2015-11-13 20:43:09 | 只看該作者
本帖最后由 pacelife 于 2015-11-13 20:57 編輯 1 b! R" g. e( L7 W
陽光小院暖茶 發表于 2015-11-13 13:19 3 l# I# a( Q2 o) {9 f1 O0 \
你的這個剔除沒必要,因為數字之和能被3整除的話,它就不會出現在第一張素數表中了。一百萬以內的素數有78, ...

! n# t5 l0 R  e2 E- c% I  x我用兩種方法算出來了,第一種是暴力計算法,費時5.39秒之多,另外一種就是你提出的多重篩選法,僅耗時0.078秒,可見適當的篩選對計算量的影響是巨大的
7 a- j% H4 l$ Q 1 t' y& u& L, C% s

- y! ^1 w! @0 g/ Y. k' ?( v
& \$ V1 Z4 l! Y, _. m) q1 |& ^& [
, \( d2 \7 ~$ `' r' b; [7 L

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?注冊會員

×
10#
發表于 2015-11-16 14:16:09 | 只看該作者
你這個語言好像不是c語言吧?是什么語言啊?能編程判斷一個整數是否為素數嗎?一個很大的整數,如果人力判斷它是不是素數,很難啊
您需要登錄后才可以回帖 登錄 | 注冊會員

本版積分規則

Archiver|手機版|小黑屋|機械社區 ( 京ICP備10217105號-1,京ICP證050210號,浙公網安備33038202004372號 )

GMT+8, 2025-7-29 18:48 , Processed in 0.106191 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回復 返回頂部 返回列表