Hatena::ブログ(Diary)

当面C#と.NETな記録 このページをアンテナに追加 RSSフィード

2007/5/13 (日)

[] スコットガさんのコード  スコットガさんのコード - 当面C#と.NETな記録 を含むブックマーク  スコットガさんのコード - 当面C#と.NETな記録 のブックマークコメント

あなごるにスコットガさんのコードが。しかもPascalかよっ!

http://golf.shinh.org/reveal.rb?128+bits/scottg/1178313234

2007/5/9 (水)

[] FizzBuzz  FizzBuzz - 当面C#と.NETな記録 を含むブックマーク  FizzBuzz - 当面C#と.NETな記録 のブックマークコメント

コンピュータサイエンス学科卒業生の過半数は1から100までの数をプリントするプログラムを書けない

http://www.aoky.net/articles/jeff_atwood/why_cant_programmers_program.htm

via オレンジニュース

1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントすること。

danさんとこ http://blog.livedoor.jp/dankogai/archives/50826507.html

あなごる FizzBuzz http://golf.shinh.org/p.rb?FizzBuzz

やべぇ、125byteから縮まらないんだけど。ってそういうことじゃないか。

それはそれとして、あなごるで遊ぶとプログラミング力が付く。縮める方向の力だけじゃなく。

はてブ http://b.hatena.ne.jp/entry/http://www.aoky.net/articles/jeff_atwood/why_cant_programmers_program.htm

2007/3/29 (木)

[] Exit Status  Exit Status - 当面C#と.NETな記録 を含むブックマーク  Exit Status - 当面C#と.NETな記録 のブックマークコメント

http://golf.shinh.org/p.rb?exit+status

id:nattowさんに2byte抜かれた!これはもう縮まないと思ってたのに…。

92byteだったコードはこちら。


using C=System.Console;class P{static void Main(){C.Write(new int[]{0,255,1}[C.Read()&3]);}}

C#3.0ならnew int[]がいらないっぽいのになぁ。

ワカラン、ムリw

2007/3/25 (日)

[] invert case  invert case - 当面C#と.NETな記録 を含むブックマーク  invert case - 当面C#と.NETな記録 のブックマークコメント

http://golf.shinh.org/p.rb?invert+case

id:nattowさんに抜かれたので再チャレンジ。

よく考えてみると問題の本質に気づいていなかった。Aha体験した。タイトル通り素直に書いたら100byteに縮んだ。

ショートコードって問題をいろんな面から考える力がつきますね。これまでは無理に曲解してばかりだったけど、素直に捕らえたほうが縮んだのはおもしろい。

[] tennis  tennis - 当面C#と.NETな記録 を含むブックマーク  tennis - 当面C#と.NETな記録 のブックマークコメント

id:matarilloさんにまた1byte抜かれたけど、もう無理と思ってmatarilloさんのとこに貼ってあったのを見てしまった。ら、また2byte縮んだ。あきらめるのはまだ早かった…

223byteのコードはこれでした。

using C=System.Console;class P{static void Main(){for(int x=0,y=0,b=0,l;b<7;b=x>y?x:y,C.WriteLine(x==y?"Set is tied at "+x:"Player"+(x>y?1:2)+(b>6?" wins the set ":" leads ")+b+" - "+(x+y-b)))l=49<C.ReadLine()[0]?y++:x++;}}

matarilloさんのを見て縮めたやつはunfairで登録。

[] permutater  permutater - 当面C#と.NETな記録 を含むブックマーク  permutater - 当面C#と.NETな記録 のブックマークコメント

順列の問題。いろいろな解法がありそう。

数日前は順列の生成がわからなくて断念。次に生成方法を調べて、まねたら回答と同じ順に出なかったのでまた断念。今日は丹念にサンプルを見てやっと解けた。いきなりトップ。やったね!

これをスラスラと解ける人はすごいなぁ。尊敬する。

2007/3/24 (土)

[] tennis  tennis - 当面C#と.NETな記録 を含むブックマーク  tennis - 当面C#と.NETな記録 のブックマークコメント

http://golf.shinh.org/p.rb?tennis

id:matarilloさんとのテニス対戦が熱い。

あまりおもしろくない問題でも、対戦相手がいるとものすごいやる気が沸いてくるw

すらどにプログラマのやる気ネタが出てるけど、競争を取り入れるのがよさげ。どうやって何を基準に競わせるかとか、一つのものを複数人で別々に作るのは無駄だとか、負けた人へのフォローとか、難しそうですが。

でも、対戦相手なし発表の場なしでこの問題を見かけたとしても、絶対手をつけなかったな。抜きつ抜かれつだからここまで短くなった。毎回これ以上短くならないと思ってコミットしてるのに、抜かれるとまた真剣に考えて新しい発見があるってことの繰り返し。競争はすごい楽しい(^^)

FizzBuzz

http://golf.shinh.org/p.rb?FizzBuzz

これが超人気なことに気づいた。もしかして一番人気?やってみると簡単な問題のわりに奥が深い。

125byteのコードを二つ見つけたけど、あと2byte縮まりません…。何がどうなってるんだか(^^;

2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 06 | 09 | 11 | 12 |
2007 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 08 | 09 | 10 | 12 |
2009 | 01 | 03 | 04 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 07 |
2011 | 04 | 07 | 10 |
2012 | 04 | 12 |
2013 | 08 |
2014 | 03 | 08 |