naoya_t@hatenablog

いわゆるチラシノウラであります

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

GCD - cafelierさんのコードから

cafelierさんの500のコード見てたら LL gcd(LL a, LL b) { while(a) swap(a, b%=a); return b; } あ、そうか。swapってそう使えるのか。短くていいな。

Graphvizで描いたグラフをGIFアニメにする - 赤黒木を例に

皆さんの脳内でも赤西仁×黒木メイサが2-3-4木でいうところの3-節として内部表現されていることと存じますが、今日は赤黒木を題材にGraphvizで描いたグラフをGIFアニメにしてみたいと思います。というか単なる Graphviz入門です。いきなりGraphvizの本家ドキ…

Project Euler

しばらく見ないうちに、レベルを表すアイコンが正多面体じゃなくなってた

JOI - 第11回日本情報オリンピック〈本選〉の問題を解いてみた日曜日

本選問題文・サンプル入出力などこちらから入手可能です。(2012-ho.pdf に問題文があります)全部で5問&制限時間4時間。 日曜日の退屈しのぎに最適!と思って5問解いてたら4時間掛かっちゃってるのであれだけど…ちゃんと時間計測してなかったけどファイル…

*TLE* - "Time Limit Exceeded" に参戦2012

インド標準時で 2012/2/8 6pm〜2/9 6pm(日本では9:30pm〜翌9:30pmまで)に開催されたTLEの参戦メモです。IIIT Hyderabad が毎年?開催しているcode golfの国際大会。国際大会といっても参加308チーム(※個人参戦可)のうち205が地元インドからで、残りのう…

PRML復々習レーン 〜機械学習のバイブルを(懲りずに)読み解く〜

そろそろやろうかと思って需要調査のためATNDを立てましたよと http://atnd.org/events/25030おそらく主催者がアクセスしやすい地域でやります。日時は未定です。

nCk mod mの計算(※mは素数とする)

TopCoder用コピペメモw 1つだけ求めたい場合 x/y mod m をフェルマーの小定理で typedef long long LL; const LL MOD = 1000000007LL; // LL add(LL x, LL y) { return (x + y) % MOD; } // LL sub(LL x, LL y) { return (x - y) % MOD; } LL mul(LL x, LL …

x86_64なアーカイブにリンクできない?と思ったらbinutilsのarとranlibが悪さをしていたらしい話

Lionにて。WordNet®をビルドしようとしていて、リンカさんに $ ./configure $ make ... ld: warning: ignoring file ../lib/libWN.a, file was built for archive which is not the architecture being linked (x86_64) て云われた。WordNet3.0でも2.1でも同…

TinySVM-0.09をMacOSXでビルドする時のメモ

TinySVM is an implementation of Support Vector Machines (SVMs) [Vapnik 95], [Vapnik 98] for the problem of pattern recognition. Support Vector Machines is a new generation learning algorithms based on recent advances in statistical learnin…

自然言語処理とlogの底と

「言語処理のための機械学習入門」(奥村学 著)の演習問題なんかを題材にPython絶賛入門中なのですが、演習問題の答えの値(具体的には§4.6.1の例題4.15のPMI*1の値)が自分の計算と違うからなんでだろう誤植かなあ(この本時々あるし)と思ってよくよく見…

バイナリ(というかアセンブリコード)を元のCソースと対訳で読みたいのだけれど… on Mac

ぐぐる先生もBINARY HACKS先生も objdump -d -S hogehoge.o で出来るよ、っていうんで brew install binutils でインストールされた gobjdump で試してみたけどCのソースが出てこない ・・・もしかしてLinuxではできるのにMacではできないとか? ・・・とい…

PDIC CUI search - Linuxでも動いた

「PDIC CUI search - PDICを検索とか(ほげほげとか)する簡易CUIツール」のあれですが、さくらVPSのCentOSで、(libiconvとre2は入れる必要があるけど)普通にビルドできて検索もできました。祝 libiconv: http://ftp.gnu.org/pub/gnu/libiconv/ から http:…

PDIC CUI search - 5年以上前のMacBook Proで動かしてみた

先日「PDIC CUI search - PDICを検索とか(ほげほげとか)する簡易CUIツール」で紹介したPDIC CUI searchを、昔使ってたMacBook Pro 17'' (Late 2006)で動くか試してみました。 Core2 Duoになったばかりでメモリ4GB載せても3GBしか使ってくれないあれです。M…

ナイーブベイズ分類器の実装とか 〜畑さん/こだまさん問題〜

スパム判定などでお馴染みのナイーブベイズ分類器。 構造が比較的単純なのに割といい感じに分類できるので重宝がられています。ナイーブベイズ分類器で用いる文書モデルとして、「言語処理のための機械学習入門」(奥村学 著)では 多変数ベルヌーイモデル (…

PDIC CUI search - PDICを検索とか(ほげほげとか)する簡易CUIツール

PDIC辞書資産(英辞郎だけでなく中国語、フランス語、ドイツ語、アラビア語、インドネシア語など色々あります)をコンソールでさくさく検索したくてここ1週間ぐらいC++でがりがりプログラム書いてます: https://github.com/naoyat/pdic-cui-search git clon…

高速かつ省メモリなGoogleの正規表現ライブラリ re2 についてのメモ

高速かつ省メモリなGoogleの正規表現ライブラリ re2 についてのメモ。 RE2は、PCRE や Perl や Python で使われているようなバックトラッキング正規表現エンジンの代替となる、高速で、安全で、スレッド・フレンドリーなC++ライブラリです。 バックトラッキ…

自分で作ったリストに自分自身を追加したい→UIがないならAPIを叩けばいいじゃない

タイトルの通り。ここから先は結局のところ自作ライブラリでの実験(+改造)メモです -module(add_myself). -export([start/0]). -include("twitter.hrl"). start() -> % erl -pa ebin -s crypto -s inets crypto:start(), inets:start(), ssl:start(), Pid…

三分探索と黄金分割探索

はい、毎度おなじみのグラフ描きたいだけのエントリですw今回のお題は「三分探索(ternary search)」。二分探索(binary search)は割とおなじみかと思うのですが、二分探索が単調増加(減少)関数fについてf(x)=kとなるxを求めるのに対し、三分探索(とか黄…

erlang-oauthでTwitter Streaming APIとかUserStreamsとか

先月「R15Bを入れたらerlang-oauthが動かなくなった」というエントリで erlang-oauth についてちらっと触れた続編というか応用編というかTwitter Streaming APIもUserStreamsもストリーミングなのですが Streaming API はBasic認証 UserStreams はOAuth です…

ポアソン分布 Poisson distribution

タイトルでポアソン分布、とか言いつつ別にポアソン分布の性質とか何かに深入りしようというでもなく、ちょっと確率分布のグラフを書きたいだけのエントリです このブログの想定読者はポアソン分布は当然知ってるのでRSSリーダーでもタイトルだけ見て既読扱…