尤拉計劃(ProjectEuler) - 拼圖

Table of Contents

※ 引述《utomaya (烏托馬雅)》之銘言:

: 我知道有很多人靠程式解出Puzzleup的題目
: 如果你也對程式解題有興趣的話
: 不妨來這個網站 http://www.projecteuler.net (尤拉計畫)
: 目前已有9萬多個註冊會員
: 不過台灣這邊,玩的人實在很少,而且大部份的台灣會員幾乎都已經呈現休眠狀態
: 實在無法想像,台灣人資訊敏銳的程度,居然沒什麼人在玩
: 嚴格來說,這並不是競賽網站,不過他也有分數排行榜
: 一周一題,目前已出到276題,分數的的排行是根據解題數來排的
: 可以把它想像成一題一分,同分的就按照解決時間的先後來排,沒有同名次的問題

: 解題數在25題到49題 Level 1:沒有等級代號
媽!!我在這裡。

: 程式語言不限,你可以用任何程式語言,如C/C++, Basic, Pascal, Delphi等
我只學過初心者等級的,常是土法煉鋼法的Basic。對演算法的認識只有名目上,
例如會用Dynamic Programming和greedy approach。back-tracking以上牽涉到tree資料
結構的根本不會 (淚目)。

: 套裝程式也可以,如matlab,Python, Haskell, Ruby等
外行人,如果有時間可以學。

: 甚至我在該網站的討論區內,還看過有人用excel解題
有些題目你若假設手邊只有excel ,研究一下窮變之道也蠻好玩的。

然後發現Office巨集編輯的地方都有Visual Basic編輯器。就用了。

: 當然用紙筆算也可以,我有不少題目是靠紙筆跟按計算機算出來的
例如 求3或5的倍數的總和、0到9第一百萬個排列是什麼數 這兩題。

: 用沒效率的方法,在市面上性能最好的個人電腦上可能要跑上幾百年還跑不出答案。
淚目~~~~~~~

: 有修過演算法的就知道,O(n^3)跟O(n)的差別是很可怕的
: (別以為O(n^3)不會發生 第251題,如果直接用暴力破解法,就是O(n^3)的複雜度)


雖然和puzzle無關,我想問一下14題的寫法,我已經卡兩整天了。

溢位與O(n^2)的地獄啊 ←將主迴圈每次加倍估計值

簡單的示意就可以幫我大忙了。 (嘆,現在puzzle版真的什麼都有了。)

--

All Comments

Yedda avatarYedda2010-02-13
已完成,只需33秒。
Mia avatarMia2010-02-15
難點在於要優化四則運算,basic只支援到Long(2^31)簡單
Barb Cronin avatarBarb Cronin2010-02-18
說是10個位數以上的運算無法,需要弄巧。剛剛抓了兩個
Steve avatarSteve2010-02-21
弄巧成拙的bug之後就正常了。有趣。
Emma avatarEmma2010-02-21
把之前算過的記起來可以加快十倍以上
Ophelia avatarOphelia2010-02-23
這題應該是秒殺吧
Franklin avatarFranklin2010-02-27
而且14題應該不用到O(n^2)
Jacob avatarJacob2010-03-01
攤手~~外行囉。Orz 用C在零點幾秒內跑完的程式移植到
Kristin avatarKristin2010-03-04
Basic耗時似乎起碼增加十倍的樣子
Zenobia avatarZenobia2010-03-06
不錯 不錯 你可以挑戰一下118題 是這題的延伸題型
Poppy avatarPoppy2010-03-08
u大已經上兩百啦
Suhail Hany avatarSuhail Hany2010-03-11
沒錯,正所謂台灣第一人。u大是也