什麼是Project Euler?
我引述Project Euler網站的一段話:
“Project Euler exists to encourage, challenge, and develop the skills and enjoyment of anyone with an interest in the fascinating world of mathematics.”
所以,如果你也是上面所說的人,那麼就一起加入吧!
Project Euler 01
題目 這題其實不難,用手算其實絕對可以的,但是既然是用來練習程式,那我們就來寫吧!
1 2 3 4 |
|
程式碼也很簡單好懂,這要感謝Python的List Comprehensions,讓程式碼看起來就是很舒服好懂:)
Project Euler 02
題目 這題只要照著Fibonacci number的定義下手,就不難了,没有什麼特别的技巧。
1 2 3 4 5 6 7 8 9 10 |
|
照着Fibonacci Number的定義打一下,就幾乎是程式本身了,還算簡單吧:D
Project Euler 03
題目 這題希望我們找出最大的質因數,主要的想法就是從2開始慢慢往上找質因數,找到最後一個,那它就是答案了:)
1 2 3 4 5 6 7 8 9 |
|
Project Euler 04
題目 這題在問説用兩個三位數乘出來最大的迴文數是誰?很單純的想法就是把三位數的乘積都算出來,然後判斷它是不是迴文數。
1 2 3 4 5 6 7 8 9 10 11 12 |
|
在這裡順道附上euler.py的内容,你會發現用Python判斷迴文數出奇的簡單:D
Project Euler 05
題目 這題要找1~20的最小公倍數,簡單的想法就是我們做一個求最大公因數的函式就好了:)
1 2 3 4 5 6 7 8 9 |
|
最大公因數的演算法放在euler.py裏面:p
這次先分享五題,希望我會有耐性把我寫過的題目一題一題的打出來。