2004-06-02
懇親会
もうそろそろボーナスの時期なのはいいのですが、課長からそのボーナスの日に、懇親会、つまりはただの飲み会なのですが、その幹事をやってくれないかと言われて、忙しいんじゃほげぇ(意訳)と返したんですが、本当のところは、いやさっきのも八割方本当ですけど、うちのグループには女の子が一人もいなくて、あまり楽しい飲み会にならないのは学習済みなので断ったのは内緒です。
というか、何が悲しくて誕生日に会社の飲み会に参加しないといけないんでしょうか。
東京に住んでいた頃と違って、鹿児島ではコートを着る回数が確かに減りました。だから、雪を見ると鹿児島の人は、ちょっとコーフンします。
[事象の地平より引用]
2005-06-02
数独
数独がSUDOKUというそのまんまな名前で英国で大流行らしいので、流行にあやかって久しぶりに解答プログラムを組んでみる。前にC言語で数バージョン作ったので、今回はRubyで作成。
速度ではCで作ったものには絶対に勝てないので、今回は配列(Array)を継承したクラスを使用して、なるべく配列の機能だけで作成した。
アルゴリズムとしては、ひたすら左上から埋めていき、破綻したら後戻りというお馬鹿なアルゴリズムで、ここにある問題で重複解をチェックしない場合でも5分程度かかる。Cの場合は重複解をチェックしても数秒のオーダーなので、軽く数百倍の差があることになる。ただ、実質50行程度、純粋なアルゴリズム部分は30行に満たないので、結構インパクトはあると思う。
Rubyバージョンは次の勉強会に向けての余興で、本命は問題の(半)自動生成ツールである。これについての考察は、またそのうち。
追記
数独ソルバーRuby手抜きバージョンをここにアップしました。
マリオン [銀行とかクレジットカードとか会社とかそのくらいか?]