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

diffをファイルに書き出し

commitのdiffをgrepしたいのだが、gitだけで検索する方法がわからなかったのでとりあえず~/diffに全commitのdiffを書きだした mkdir ~/diff git log | grep '^commit' | ruby -lane 'puts $F[1].strip' | ruby -lane 'arr=ARGF.to_a.map{|i|i.strip}; for i …

ある日付のcommitのIDだけ抜き出す

git-id-date.rb #!/usr/bin/env ruby require 'date' if ARGV.size < 1 STDERR.puts "ruby #{$0} 2011-08-15" STDERR.puts "ruby #{$0} 2011-08-15 2011-09-30" exit 1 end date_start = Date.parse(ARGV.shift) date_end = ARGV.empty? ? Date.today : Date…

camelcaseとsnakecaseの変換

いろいろ丁寧に変換するようにした --to_snake 'ShoHashimoto' => 'sho_hashimoto' 'sho_hashimoto' => 'sho_hashimoto' 'shokai' => 'shokai' 'SHOKAI' => 'shokai' 'This is a pen' => 'this_is_a_pen' 'EventMachine::HTTPRequest' => 'event_machine_htt…

8queen問題

http://ja.wikipedia.org/wiki/エイト・クイーンすげー悩んだけどわりと綺麗にできた。 再帰+lambda渡しは再帰を巻き戻さないで良いので書きやすい。 変な書き方しないようにしたけど20行きった。 #!/usr/bin/env ruby def put(size=8, queens=[], &block) b…

清一色の配牌パターン数を調べる

mlab(masui lab)はmajan labになりました。 清一色の配牌パターン数を調べる。 1が0〜4枚、2が0〜4枚...9が0〜4枚、で合計14枚になるのが正しい配牌なので、ならば富豪的に5進数を使おうchin-itsu.rb for i in 0..(("4"*9).to_i(5)) res = i.to_s(5) puts '0…