« Project Euler - Problem 41 | トップページ | Project Euler - Problem 43 : 0.09s (Ruby 1.9) »

2009年7月29日 (水)

Project Euler - Problem 42

問題はこちらをご覧ください。


今回は何にも工夫をしていません。

ファイルを読み込んで、単語の値を求めて、三角数かどうかを判定して……問題文のとおりのことしかしてません。

To_Value = "A".ord - 1 class String # 単語の値を求める def to_word_value self.bytes.to_a.map{|char| char - To_Value}.inject(:+) end end class Integer # == 三角数であれば、何番目かを返す。 def triangle? x = ((1 + 8 * self) ** 0.5 - 1) / 2 if x == x.to_i then return x.to_i else return false end end end arr = IO.read("words.txt").delete("\"").split(",") puts arr.map{|s| s.to_word_value}.select{|v| v.triangle?}.size

« Project Euler - Problem 41 | トップページ | Project Euler - Problem 43 : 0.09s (Ruby 1.9) »

Project Euler」カテゴリの記事

Ruby」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/112020/45774402

この記事へのトラックバック一覧です: Project Euler - Problem 42:

« Project Euler - Problem 41 | トップページ | Project Euler - Problem 43 : 0.09s (Ruby 1.9) »

2016年7月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
フォト

最近のトラックバック

無料ブログはココログ