Just another Ruby porter,

〜2007年2月下旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2007-02-21 (Wed)

[穴] Card Sharpでsed golf

ループもなくs///しか使ってない。

s/^/SHDC/
/-D/s/D//
s/./Ace&2&3&4&5&6&7&8&9&10&Jack&Queen&King&/g
/-Q/s/Queen.//g
s/CA.*/C/
s/S/OSpades\n/g
s/H/OHearts\n/g
s/D/ODiamonds\n/g
s/C/OClubs\n/g
s/O/ of /g

ofの置き換えでせこく1Bかせいでいる。これで167B。
実はこの問題でs/./hoge&/gを思いついて 昨日の件につながる。


2007-02-22 (Thu)

サーバ不調

sshでログインできないので日記の更新ができない。
という内容で更新するのはいかがなもんか。

[穴] exit status

なぜかずるした後で正統な解答を思いつく。
しかしawkも奥が深い。これに気づいたうささんもすごい。
たぶん14Bでできると示されなければ15Bのままだったろうな。


2007-02-23 (Fri)

サーバ復活

ゆぞさん、ありがとう。

[穴] 見直し

過去に解いた問題を見直してみるとなぜかどんどん縮む。
prime.awkはfor loopを減らしたいんだが思いつかない。


2007-02-24 (Sat)

[穴] 正規表現で3の倍数

あ、そうか。つまり

/^\(###\)\+$/iFizz

ってな感じなわけだな。
あとは#を数字に変換する処理を書けばsedでもいけると。
そうじゃないと200Bは切れそうもない。

[Ruby] Ruby 1.8.6 preview2

djgppの環境を壊してしまっているので、早いとこ復活させないと。


2007-02-25 (Sun)

[穴] Little Endian Calculator

Rubyでpack/unpackの組み合わせ。
ひょっとしたらpack/unpackを使わないほうが縮むのかな。
reverseが2つって長すぎだよな。

[穴] FizzBuzz.sed

#を数えるのを作ってみたら300Bを越えて笑った。
これはあまり縮みそうもないのでこのままさらそう。

#n
s/$/@/
h
:b
g
s/$/#/
/^.\{102\}$/b
h
s/@\(###\)\+$/Fizz&/
s/@\(#####\)\+$/Buzz&/
s/z@.*/z/p
/@/!bb
s/@//
s/#\{10\}/a/g
/#/!s/$/0/
s/a\{9\}/9/
s/a\{8\}/8/
s/a\{7\}/7/
s/a\{6\}/6/
s/a\{5\}/5/
s/aaaa/4/
s/aaa/3/
s/aa/2/
s/a/1/
s/#\{9\}/9/
s/#\{8\}/8/
s/#\{7\}/7/
s/#\{6\}/6/
s/#\{5\}/5/
s/####/4/
s/###/3/
s/##/2/
s/#/1/
p
bb

2007-02-26 (Mon)

[Ruby] goruby

コマンド名長いよ。gで。

[AWK] awkの裏を読む

おそろしいことが書いてあった。そんなテクニックが。


2007-02-27 (Tue)

[SCM] subversionからgit

git-svnimportを使ってみるも一回も成功した試しなし。
もうタイムスタンプが壊れてもいいから

% git init-db
% svn up -r1
% for i in {2..414};do git add $(svn up -r$i |& awk '/^A/{print$2}');\
  git commit -a -m "$(svn log -r$i |sed -n 4p)";done

でいいやと思ったり。r414とそれほど多くもないし。


2007-02-28 (Wed)

[穴] FizzBuzz

実はほとんど同じ。

1.upto(?d){|i|f="Fizz"if i%3<1;puts i%5>0?f||i:"#{f}Buzz"}

この場合もfは同じようにnilになる。
&&にしても同じサイズだったと勘違いしてしまい、その後試さなかったのが敗因。


<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!