Life Goes On

まあまあだけど楽しんでる方です

2009-01-01から1年間の記事一覧

レイトン教授ってなによ?

id:matarillo さんが、ここ とか ここ で書いている問題を解いてみました。 基本的には枝刈りありの全数探索。 c から c' までノードを一つ一つ辿りながら、a から a' までのルートと、b から b' までのルートが残っているかを都度確かめていきます。どちら…

109問目

http://projecteuler.net/index.php?section=problems&id=109 ダーツで、100 未満の得点でチェックアウトできる場合の数を求める。3 投以下で、最後は Double で終わらないといけない。1 投目と 2 投目は入れ替わっても同じとみなす。 1 投目と 2 投目が同じ…

Could not deduce (MArray (STUArray s) (Int, Int) (ST s)) from the context ()

引き続きモナドと格闘中。できるようになったこと。 STArray や IOArray を動かせるようになった。 Disjoint Set が実装できた。→ 9400 分( 6 日と 12 時間 40 分)かかっていたコードが 1 分で返ってくるようになった。ちなみに STArray で 1 分、STUArray…

if について

以前に、なぜ Haskell の if は関数じゃないの?という疑問を持ったことがあるのですが、そもそもなぜそう思ったかというと、↓のようなコードをポイントフリースタイルにできないからなのです。 ほら、意味もなくワンライナーで書きたいときってあるじゃない…

(>>) :: (Monad m) => m a -> m b -> m b

最近 IO 周りが騒がしいので、鋭意モナドを勉強中です。 個人的に do 記法に馴染めないので、ここを見て脱糖を試みているのですが、どうも上手く動きません。 もともとはこんなコード。 関数 changed の中で、配列の読み込みをした後に書き込みをしています…

110問目

108問目と同じ。

108問目

1/x + 1/y = 1/n を満たす x, y の組を考える。n = 4 のとき、解は (x, y) = (5, 20), (6, 12), (8, 8) の 3 組であるが、解の個数が初めて 1,000 を超えるのは n がいくつのときか。 ずいぶん前に解いたので、自分で書いたコードが読めなくなっていて、改め…

スマリヤン

スマリヤン先生のブール代数入門 -嘘つきパズル・パラドックス・論理の花咲く庭園-作者: Raymond Smullyan,川辺治之出版社/メーカー: 共立出版発売日: 2008/08/25メディア: 単行本 クリック: 7回この商品を含むブログ (2件) を見る会社の先輩が翻訳していた…