perlで世界のナベアツ問題 その後
昨日突然、会社の同期にブログを見つけられて、二年前に書いたperlで世界のナベアツ問題について指摘を受けました。曰く、「こんなのワンライナーじゃねえ」はいその通りです。
で、指摘してくれた同期によるお手本が以下の通り。アルゴリズムを替えずにこんなに短くなるものなのですね。
体裁を整えるため改行していますが実際は「\」の無い一行となります。
バージョン0.1
perl -le 'print ((!($_%8))?"$_ぅぅういえぇえあ"\ :(!($_%3) or $_=~/3/)?"$_っ!!":$_)for(1..40);'
バージョン0.2
perl -le 'print ((!($_%8))?"$_ぅぅういえぇえあ"\ :(!($_%3) or /3/)?"$_っ!!":$_)for(1..40);'
バージョン0.3(最新バージョン)
perl -le 'print !($_%8)?"$_ぅぅういえぇえあ"\ :(!($_%3) or /3/)?"$_っ!!":$_ for(1..40);'
以下の通りご本人による解説を書いていますので見てみよう。
http://www.jp-z.jp/changelog/2010-01-05.html#2010-01-05-1
ではー。