忍者ブログ
mirac cafe という名の不思議なブログ

※ ブログ等での私の投稿は個人の見解によるものであり、 所属する組織の見解ではありません。
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

なんかゴルフという遊びを教えてもらって。

んー、、普通のゴルフじゃなくて、コードゴルフというのだけども。

俺がこんな時間までやってるぐらいなんでまぁプログラム関係なわけでw

ルールは簡単。

与えられた問題を解く、一番短いプログラムを書いた人の勝ち。

普段は読みやすいプログラムを心がけてるのだけど、

ゴルフでは知りうる限りの技法を使ってプログラムを短くしていくわけで。

んー、、めちゃ面白い〜笑”


ということでゴルフの一例。

元のプログラム(読みやすいが長い)はこんなの。

int k,i;
main(){
    puts(":");
    puts(":-");
    for(k=1;k<33;k++){
        for(i=0;i<k;i++)printf(i?"))":":-)");
        puts("");
    }
}

普段かくプログラムはこんな感じです。

一方、ゴルフで短くなったのはこんなの。

k;main(i){
    printf(":\n:-");
    while(++k<33)for(i=k;i;)printf(i--<k?"))":"\n:-)");
}

かなり短くなりました、、ここまでするのに1時間30分ぐらいかかった笑”

この2つのプログラムが同じ出力を出すって理解するのは、自分でもなかなか大変です笑”

とまぁこんなことをして夜更かししてしまった今日…ってかもはや昨日(笑
PR
この記事にコメントする
お名前
タイトル
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
無題
なんかこの例だとプログラムが短くなったってのが分かりにくいなぁ笑”

一応上のプログラムは120文字、下は78文字なんでかなり短くなってますw

ちなみにトップの人は63文字らしいです、、

まだ15文字も減らせるとか信じられない…w
mirac 2008/04/20(Sun)03:28:27 編集
この記事へのトラックバック
この記事にトラックバックする:
カレンダー
04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
フリーエリア
最新コメント
[11/30 kamae]
[04/30 mirac]
[04/29 渚]
[01/20 渚]
[01/01 mirac]
[12/09 mirac]
[10/31 mirac]
[03/14 mirac]
[08/10 404ななしさん]
[08/09 halwhite]
最新記事
最新トラックバック
ブログ内検索
忍者ブログ [PR]