FizzBuzz問題のその後 ― 2018-02-05 01:01
FizzBuzz問題とは……
1から100までの整数を印字せよ。ただし3の倍数の場合は代わりに"Fizz"と印字し、5の倍数の場合は代わりに"Buzz"と印字し、両方の場合は"FizzBuzz"と印字せよ。
という問題で、これを*いかに短いコードで書くか*が競われています。
http://golf.shinh.org/p.rb?FizzBuzz
ブログを読み返すと、9年前の僕はこれをCで89文字で書き、当時58位(56位タイ)につけていました。しかし今現在は147位に下がっちゃってます。Cでの1位は変わらず73文字なので、Cで73~88文字でエントリーできた人がそれだけ増えたということです。
悔しいので改めて考えてみているんですが、どうしても89文字を下回れません。73文字って、どんな技なんだろう……。
1から100までの整数を印字せよ。ただし3の倍数の場合は代わりに"Fizz"と印字し、5の倍数の場合は代わりに"Buzz"と印字し、両方の場合は"FizzBuzz"と印字せよ。
という問題で、これを*いかに短いコードで書くか*が競われています。
http://golf.shinh.org/p.rb?FizzBuzz
ブログを読み返すと、9年前の僕はこれをCで89文字で書き、当時58位(56位タイ)につけていました。しかし今現在は147位に下がっちゃってます。Cでの1位は変わらず73文字なので、Cで73~88文字でエントリーできた人がそれだけ増えたということです。
悔しいので改めて考えてみているんですが、どうしても89文字を下回れません。73文字って、どんな技なんだろう……。
cygpath ― 2018-02-18 17:49
cygwin前提の話ですが、コマンドラインで絶対パスが必要な場合は cygpath コマンドが便利。
たとえばmakefileでコマンドhoegehogeを使いたいんだけど、hogehogeへのパラメータとして絶対パスを指定しないとエラーとなるような場合。
しかもドライブレターを含むWindowsの絶対パスじゃないとダメだとかいう場合。
なんで?って思うけど、たまにありますよね……
そんなときには
たとえばmakefileでコマンドhoegehogeを使いたいんだけど、hogehogeへのパラメータとして絶対パスを指定しないとエラーとなるような場合。
しかもドライブレターを含むWindowsの絶対パスじゃないとダメだとかいう場合。
なんで?って思うけど、たまにありますよね……
そんなときには
foo.x: foo.y hogehoge $< -o $(shell cygpath -aw $@)てな感じで解決。
最近のコメント