noise

計算機科学や各種設定のメモ

Ruby

直線数最適化障害物回避問題

解きたい問題 障害物のある平面において起点と終点を結ぶ経路を探索し直線数を最小化したい。 障害物は線分で与えられる。 経路の長さは目的としない。 この画像は問題の単なる一例であり、障害物は平面上に自由に置けるものとする。 解決手順 適当な細かさ…

大域最小カット(Global Minimum Cut)

問題 連結無向グラフのカットのうち最小のものを求める。 実装 ソースコード(IdeOne) 解説 乱択アルゴリズムによる実装。 一辺をランダムに選んで縮約していく。 最後に2点残る。これらの点に縮約された点が大域最小カットである可能性は以上。 頂点の数をと…

最近点対問題(Closest Pair of Points)

問題の定義 平面上のn個の点の中からユークリッド距離が最小の点の組み合わせを出力する。 実装 ソースコード(Ideone) 解説 入力をランダムにシャッフルしたのちに逐次添加アルゴリズムを用いる。 アルゴリズムが実行される任意の時点において、一辺の長さの…

Randomized Convex Hull

説明 乱択逐次構成法で点列から凸包を求めます。 三角形から始めて順次凸包を大きくしていく。 実行時間はO(nlogn)。

15 Slide Puzzle

コンペ形式 レナとミナミの国際プログラミング選手権 【幼なじみ or 許嫁】国際プログラミング選手権を制したコード7選+α こちらに参加しました。

中央値を求めるアルゴリズム(決定的/乱択的比較)

説明 QuickSelectと呼ばれているO(n)時間アルゴリズムを利用する。

RubyでSQLite3を用いる場合の注意点

問題 WHERE節で文字列比較により特定レコードを取得しようとしたができなかった。 =ではなくLIKEを用いて一時的に対処した。

Rails3 + Unicorn + nginx で Web アプリケーション開発メモ

簡単ではありませんでした。 自分用にTipsを書きます。

ニコニコ動画のダウンロード

現在におけるニコニコ動画のダウンロード方法についてまとめておきます。

Ruby 1.9.2 Build on Cygwin

win32ole のリンク中に終了してしまうので以下のようにするまず LIBRARY_PATH を設定する export LIBRARY_PATH=/usr/lib/win32api:$LD_LIBRARY_PATH configure 実行 ./configure --enable-shared optflags='-O2 -march=native' そして make してインストール…