000. 尤拉計劃簡介
尤拉計劃是什麼?
尤拉計劃(Project Euler)是一個具有挑戰性的不僅僅需要具備數學能力的“數學/計算機程式設計”問題集合。數學方面的知識可以幫助你獲得優雅而高效的解決方案,與此同時,計算機應用和程式設計技巧也不可或缺。
開展尤拉計劃這個專案並且持續進行下去的主要目的是提供一個有趣味並且有創造性的環境,在這裡可以探索未知領域、學習新的概念。
這些問題適合那些人?
可能的解題者包括那些不滿足於教學內容的學生,對數學問題感興趣的非數學家,以及希望能夠鍛鍊自己的解決問題能力和數學能力的專業人士。當然,一切都是純英文,雖然描述題目的英文不太難,但對於感興趣的人特別是青少年來說應該具備一定的英語基礎。
任何人都可以解出問題麼?
尤拉計劃提供的問題集有不同的難度以及多種解題經驗,可以進行連續的啟發式的學習。也就是說,通過解決一個問題,提供給解題者一個新的概念,使解題者可以接觸之前無法涉及的問題。因此,有毅力的參與者將會逐一完成每一個題目。
我應該從哪裡開始?
從哪裡開始,取決於你的水平。在問題列表中你可以看到每一個問題有多少人解決,一般來說,解決的人越多,問題越簡單。
我寫出了程式,但是程式執行了好幾天程式才得到答案,有問題麼?
當然沒有問題。這裡每個問題都符合“一分鐘原則”,也就是說盡管這些問題中的難題可能需要很長一段時間來設計成功的演算法,但是在一個普通的計算機上,高效的程式應該在一分鐘之內得到答案。
如果花費超過一分鐘的時間解決問題,有問題麼?
這個當然沒有問題,但是你可能需要回到問題看看如何能夠改善你的思路。請記住,一旦你解決了某個特定的問題,你就可以進入關於這個問題的論壇參與討論,並且從其他解決了這個問題的參與者那裡獲得一些靈感。
我使用搜尋引擎解決了問題,有問題麼?
因特網是資訊時代的巨大資源庫,合理利用因特網去研究問題是應該鼓勵的,特別是在這些問題表面之下往往隱藏著一些數學的寶藏。然而,在研究解決思路和在其他網站尋找現成的答案之間,有一條明顯的界線。如果你簡單的複製了一個答案,那麼你最終得到了什麼呢?
我檢查了十遍程式,但是我的答案還是不對,是不是標準答案出了問題?
對於那些新發布的問題,確實有可能會有一些小的錯誤成為漏網之魚,或者是在遣詞造句上模糊以至於問題沒有被解釋清楚。然而,當有很多參與者都與標準答案一致,而只有少數人仍在懷疑標準答案時,那麼很有可能是“睡不著覺怨枕頭”。
是否有關於如何解題的提示?
認真閱讀題目本身的細節,仔細分析對題目給出的示例,研究題目時使用紙和筆來獲得一些關於解題的思路。題目本身可能會包含一些線索,如果這些對你來說比較陌生,那麼利用網路或者書本去獲得相關的背景知識。可以編寫一些簡陋的程式來滿足那些簡單的示例,對比程式的輸出和示例的答案,這樣你就可以確認自己理解了題目的要求,並且找到正確的方向。利用這些簡單的常識去推斷得到最終答案的程式執行時間,如果發現程式需要執行遠超過一分鐘的時間,那麼重新考慮你的解決方案。
這個專案是如何開始的?
尤拉計劃由 Colin Hughes(也被人們稱為 euler)在 2001年10月建立,一開始時作為 mathschallenge.net 網站的一個子欄目。你知道這些問題在當時有多麼流行麼?隨著會員人數的不斷增長,尤拉計劃在 2006 年有了獨立的域名。
誰在執行尤拉計劃?
新問題的創意來自我們的會員,天才而勤奮的數學家和程式設計師組成了開發團隊。一句話來說,是會員們在執行尤拉計劃。
尤拉計劃致力於鼓勵、挑戰並且發展解題技巧,並且為那些對迷人的數學世界有興趣的人提供樂趣。
在解題時,除了紙和筆以外,請準備好以下圖書,以便隨時查閱:
在這個合集中,我將主要使用 Haskell 語言解題。如果需要了解如何安裝 Haskell 軟體,請參閱:Haskell趣學指南。
- 尤拉計劃網站:http://projecteuler.net/
- 尤拉計劃論壇:http://forum.projecteuler.net/
- 尤拉計劃中文翻譯站:http://pe.spiritzhang.com/
- MathBlog: http://www.mathblog.dk/ ?
相關文章
- 尤拉計劃512題(冪的尤拉總計函式和)函式
- 尤拉計劃695:隨機長方形隨機
- 尤拉計劃717:取模公式之和公式
- 尤拉計劃697:隨機衰減序列隨機
- 尤拉計劃713:圖蘭熱水系統
- 尤拉計劃595題:增量隨機排序隨機排序
- 尤拉計劃425題:質數連線
- 尤拉計劃711:二進位制黑板
- 尤拉計劃605題:結對投幣遊戲遊戲
- 尤拉計劃701:隨機連線區域隨機
- 尤拉計劃463題:奇怪的遞迴關係遞迴
- 用尤拉計劃題目來學q語法
- 尤拉計劃533題:卡邁克爾函式函式
- 尤拉計劃287題:四分樹編碼(一個簡單的壓縮演算法)演算法
- 尤拉計劃433題:歐幾里德演算法的步數演算法
- 對尤拉計劃427題(n-序列) 的一些分析
- SAP R3 生產計劃和控制簡介[摘錄]
- 審計簡介
- Dalvik虛擬機器簡要介紹和學習計劃虛擬機
- ORACLE執行計劃的介紹Oracle
- ART執行時垃圾收集機制簡要介紹和學習計劃
- kingofark的第0個五評計劃 - kingofark自述與簡介 (轉)Go
- CSS 計數器簡介CSS
- MySQL統計資訊簡介MySql
- windows程式設計簡介Windows程式設計
- shell程式設計簡介程式設計
- 利用容斥原理求尤拉計劃565題的S(1E9,2017)
- 【PG執行計劃】Postgresql資料庫執行計劃統計資訊簡述SQL資料庫
- 尤拉計劃386題(反鏈的最大長度) 論壇python解法學習筆記Python筆記
- 尤拉計劃386題(反鏈的最大長度) 論壇c++解法學習筆記C++筆記
- TiDB 查詢優化及調優系列(二)TiDB 查詢計劃簡介TiDB優化
- Dalvik虛擬機器垃圾收集機制簡要介紹和學習計劃虛擬機
- Android程式間通訊(IPC)機制Binder簡要介紹和學習計劃Android
- Oracle OCP(50):審計簡介Oracle
- 邊緣雲端計算簡介
- 23種設計模式簡介設計模式
- shell程式設計—簡介(一)程式設計
- 結對程式設計簡介程式設計