Keep Hacking :)

Life is complex, it has both real and imaginary parts.

Project Euler 358的解答

這題是在去設定Cluster的時候看到的,發現這題蠻簡單的,所以回家的時候就順手解了它。

題目是這樣說的,有一種數叫做cyclic number,仔細的性質大家就去看一下Wikipedia上的介紹吧,這裡就不多加說明了。那麼題目要找的是一個開頭是00000000137,而結尾是56789的一個唯一的cyclic number,然後請我們算出它的數字和。

從142857說起

這個數字我是在高中的時候第一次聽到的,當時聽到的時候真是十分的驚訝,原來這世界上有這麼美的數字。

後來在學校的BBS裡面發現有很多更深入的討論,所以也對這種類型的數字有了一點點初步的了解。

BTW,在我大學的時候參加迎新宿營的時候,剛剛好也出了類似的題目,所以也就順手秒殺了XD,據說當時嚇到很多學長姐,因為他們本來想用這題來拖點時間的,結果沒有想到人算不如天算啊XDDD

Project Euler 206的解答

其實是單純覺得這題蠻簡單的,而且一下就寫完了,所以就順手把它寫一下。

題目是要找出一個唯一的正整數,使得它的平方長得要像1_2_3_4_5_6_7_8_9_0這種形式。因爲數字是平方數,不難判斷最後是00結尾,所以要判斷的地方就更少了一點。解决的方法是直接採用暴力法,從上界往回找,直到符合這個形式。

有趣的猜數字謎題

這種題目感覺就是百出不厭,一些公司的面試題也會出現,不過解起來也是十分有趣:D

題目

老師心中想了一個兩位數。他把這兩位數的兩個數字和告訴了A,把這個兩位數的正因數個數告訴了B。

A:我不知道。

B:我也不知道, 但我知道是否為偶數。

A:我知道了。

B:我也知道了。

請問此兩位數是誰?

以前自己做這種題目,都是拿著筆一個一個慢慢淘汰,不過今天要選擇用把我的解題邏輯寫成程式碼,讓電腦幫我做淘汰這件事情:p

Project Euler 01 ~ 05 的解答

什麼是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.”

所以,如果你也是上面所說的人,那麼就一起加入吧!

使用Regular Expression去驗證質數

我們都知道Regular Expression是一個很厲害的工具,但是它可以用來判斷質數,是不是聽起來有點嚇人:P

我們先來看一下程式碼:

1
2
3
4
5
class Fixnum
  def is_prime?
    ("1" * self) !~ /^1?$|^(11+?)\1+$/
  end
end