| 5 | 1/1 | 返回列表 |
| 查看: 1686 | 回復: 7 | |||
| 本帖產(chǎn)生 4 個 程序強帖 ,點擊這里進行查看 | |||
| 當前只顯示滿足指定條件的回帖,點擊這里查看本話題的所有回帖 | |||
wangww2011木蟲 (著名寫手)
|
[交流]
Project Euler 45 歐拉工程 45 題 已有3人參與
|
||
|
好久沒有人發(fā)了,我來接著發(fā)吧 三角數(shù),五角數(shù)和六角數(shù)可以用下面的公式產(chǎn)生: 三角數(shù) Tn=n(n+1)/2 1, 3, 6, 10, 15, ... 五角數(shù) Pn=n(3n-1)/2 1, 5, 12, 22, 35, ... 六角數(shù)l Hn=n(2n-1) 1, 6, 15, 28, 45, ... 可以證實 T285 = P165 = H143 = 40755. 請找到下一個同時是五角數(shù)和六角數(shù)的三角數(shù)。 PS 雖然沒有什么意思,但是為了連續(xù)性,還是逐個發(fā)吧 |
木蟲 (正式寫手)

至尊木蟲 (著名寫手)
驃騎將軍
|
matlab code ,暴力解 %% Find the next triangle number that is also pentagonal and hexagonal. % It can be verified that T285 = P165 = H143 = 40755. % Triangle Tn=n(n+1)/2 % Pentagonal Pn=n(3n?1)/2 % Hexagonal Hn=n(2n?1) % Elapsed time is 0.095221 seconds. % ans = % 1533776805 function result = euler45() tic; n = 1000; t = (1:n).*((1:n)+1)/2; p = (1:n).*(3*(1:n)-1)/2; h = (1:n).*(2*(1:n)-1); result = max(h(ismember(h,t(ismember(t,p))))); % n<1000時最大的同時是t,p,h的數(shù) while result<40775 n = n*10; t = (1:n).*((1:n)+1)/2; p = (1:n).*(3*(1:n)-1)/2; h = (1:n).*(2*(1:n)-1); result = max(h(ismember(h,t(ismember(t,p))))); end toc; end |

木蟲 (正式寫手)
|
自學了一段時間python,第一次做題啊,呵呵。 # -*- coding: cp936 -*- # Project Euler 45 # Tn=n(n+1)/2 # Pn=n(3n-1)/2 # Hn=n(2n-1) # 遞增六角數(shù),驗證其是否為三角及五角數(shù) from math import sqrt def isTriangle(t): if ((sqrt(8*t+1)-1)/2)%1==0: #用六角數(shù)的值解得三角數(shù)公式的n值,驗證其是否整數(shù) return True def isPentagonal(p): if ((sqrt(24*p+1)+1)/6)%1==0: #同上 return True h=144 while h: m=h*(2*h-1) if isTriangle(m) and isPentagonal(m): print ('T%d, P%d, H%d,the number is: %d')%((sqrt(8*m-1)-1)/2,(sqrt(24*m+1)+1)/6,h,m) break else: h+=1 結果 T55384, P31977, H27693,the number is: 1533776805 PS:我都是在自學python,不是程序員科班出身的,有什么不對的幼稚的地方,各位多指教,呵呵,感激不盡 [ Last edited by tieer on 2011-9-3 at 23:23 ] |

木蟲 (著名寫手)
|
3樓: Originally posted by tieer at 2011-09-02 19:50:39: 自學了一段時間python,第一次做題啊,呵呵,不會用BBcode,見諒。 # -*- coding: cp936 -*- # Project Euler 45 # Tn=n(n+1)/2 # Pn=n(3n-1)/2 # Hn=n(2n-1) # 遞增六角數(shù),驗證其是否為三角及五角數(shù) ... BBcode很容易使用,譬如你想顯示代碼 [code]Your code[/code ] 注意其實應該沒有空格,為[/code] |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 315分 085602 求調劑 +7 | 26考研上岸版26 2026-04-02 | 7/350 |
|
|---|---|---|---|---|
|
[考研] 調劑求助 +5 | 想換手機不想解?/a> 2026-04-02 | 5/250 |
|
|
[論文投稿]
chinese chemical letters英文版投稿求助
120+4
|
Yishengeryi 2026-03-30 | 6/300 |
|
|
[基金申請]
請問共同通訊和共同一作的認可度問題
10+4
|
psa1234 2026-04-01 | 8/400 |
|
|
[考研] 085600,材料與化工321分求調劑 +11 | 大饞小子 2026-03-28 | 11/550 |
|
|
[考研] 285求調劑 +14 | AZMK 2026-04-02 | 14/700 |
|
|
[考研] 266求調劑 +4 | 學員97LZgn 2026-04-02 | 4/200 |
|
|
[考研] 085600,材料與化工321分調劑 +8 | 大饞小子 2026-03-27 | 10/500 |
|
|
[考研] 354求調劑 +4 | lxb598 2026-03-31 | 5/250 |
|
|
[考研] 化學工程專碩324分,一志愿中國礦業(yè)大學求調劑 +7 | 耿耿1314 2026-04-01 | 7/350 |
|
|
[考研] 266分,一志愿電氣工程,本科材料,求材料專業(yè)調劑 +10 | 哇呼哼呼哼 2026-04-01 | 11/550 |
|
|
[考研] 265求調劑 +11 | yelck 2026-04-01 | 12/600 |
|
|
[考研] 【調劑】一志愿廈大生物與醫(yī)藥調劑 +3 | Echo蝦米 2026-03-31 | 3/150 |
|
|
[考研] 080200學碩,機械工程專業(yè)277分,求帶走! +4 | 瓶子PZ 2026-03-31 | 4/200 |
|
|
[考研] 材料工程085601數(shù)二英一335求調劑 +5 | 雙馬尾痞老板2 2026-03-31 | 5/250 |
|
|
[考研] 085602化工求調劑(331分) +8 | 111@127 2026-03-30 | 8/400 |
|
|
[有機交流] 考研調劑 +8 | watb 2026-03-26 | 8/400 |
|
|
[考研] 本科新能源科學與工程,一志愿華理能動285求調劑 +3 | AZMK 2026-03-27 | 5/250 |
|
|
[考研] 394求調劑 +3 | 好事多磨靜候佳?/a> 2026-03-26 | 5/250 |
|
|
[考研] 081200-314 +3 | LILIQQ 2026-03-27 | 4/200 |
|