やっと縮んだ

FizzBuzzがやっと縮んだ。 printfの動作をすっかり忘れてたのが痛かった・・・ even lines 与えられた文章の偶数番の行の文字列を出力しろっていう問題。 echoのコードをちょっと改良するだけで完成。40B。 main(i, c) { for(; gets(c); i++ % 2 ? : puts(c)…

変数のメモリ上の配置順

anarchy golfのFizzBuzzを縮めようと思って試行錯誤してたら、何となく気になることに出くわしたのでメモ。 手元の環境では変数がメモリ上に配置される順番は 初期化関係無しでローカル変数、初期化済みのグローバル変数、未初期化か0で初期化されたグローバ…

最短ちょっと手前

Fibonacci Numbersとgoogle、最短コードまでそれぞれ後1Bと2B。 ここまでを振り返ると、最短コードまで後一歩のものはそこそこあれど、最短コードまで辿り着いたものがない。 最後の一押しがあまりにも遠すぎるorz Fibonacci Numbers ループでやるには多分こ…

SRM449 DIV2

久しぶりに参加できる時間帯での開催だったので参加した。 しかし結果は0点という・・・ 気が付くのが遅いとかコーディングが遅いのが本当にネックだなあ。 だめだめだー 250 数直線上にある山を登ったり降りたりする人が、歩いた距離はどれくらいかっていう…

閃き待ち

ぼーっとコードを眺めて閃き待ちしている今日この頃。 最短コードを書ける人の頭の中ってどうなってるんだろうと思うことしばし。 知識の有無も当然だろうけど、思考が根本的に違う気がするんだよなあ。 と焦っても仕方ないので当面は愚直なコードで攻めよう…

結局ゴルフ

あれこれ手を付けておきながら結局ゴルフしてる最近。 ほんの少しだけ成果が上がってるからモチベーションも上がるんだろうか。 他のこともやらないとなあ・・・ FizzBuzz いつぞや流行ったFizzBuzz。 当時も書いた覚えがあるけどゴルフするのは今回が初めて…

42

ゴルフなのにゴルフしない。 そんな日があってもいい。 ultimate problem 圧倒的42・・・!異端のプログラム・・・!と いうか・・・ハッキリいえばジョーク・・・! とりあえず42とだけ出力すればいい問題。 最短はputsで出力したものだろうけど、それなら…

もっと!もっと短く!

SRM448に間に合わなかったのでanarchy golf。 それなりに短くなってきてるから頑張り甲斐があるというもの。 tennis 2位集団が遂に射程圏内に入った。4B縮んで157B。後2Bだ! 三項演算子の真の場合の値(第二オペランドって書いた方がいいのかな?)を省略す…

今日も今日とてゴルフ

気が付いたらGoogle Code Jamの予選が終わってた。 問題解けなさそうだけど物は試しで参加してみたかったなあ・・・ 参加できなかった分anarchy golfを頑張ることに。 delete blank lines Segmentation faultで通らないかと思ったらあっさり通ってしまった。…

anarchy golfで数学

数学する前にSmilyes Triangeの記録を見たら最短コードが61Bになってた・・・だと・・・? 63Bが最短だと思ってたらまだ縮むのか。 世の中凄い人がたくさん居るものだなあ。 e ネイピア数を小数点以下100桁まで表示せよっていう問題。 普通に計算すると長く…

Project Euler

anarchy golfはちょっとお休みして。 id:ichirin2501さんがProject Eulerの紹介記事を紹介されていたので、見てみたら面白そうだったのでやってみた。 数学もちゃんとやっておかなきゃと思っていた矢先なので丁度いい機会だ。 言語は何でもいいみたいなので…

配列のサイズ

配列のサイズは省略しても結構動くみたい。 省略すると確保されるメモリの量がわからないから使ってなかったけど、今のところ動いてしまっているから使うことにした。 ここが省略できるとゴルフ的には結構おいしいと思う。 なんで動くのかわからないのは気持…

戻り値も大事

先日id:ichirin2501さんから、readは読み込んだバイト数を返す事を教えていただいた。 いちいち関数呼んで文字数を消費するより、戻り値を利用できるのならそうする方が文字数節約できるんだなと学習。 ちなみにreadはシステムコールだった。 関数じゃなかっ…

メモリ破壊のコード

メモリ破壊して縮められそうなコードがあるんだけど、上手く通すことができない。 チェックをすり抜けて通す方法ってあるのかな。 上手いメモリの壊し方というか、メモリ破壊を正しく理解していないのかもしれないけどorz C言語でコード短縮を狙うなら、その…

SRM446 DIV2

500点問題が割と簡単だったので、初めて1000点問題を開けられた記念すべきSRM。 とか言ってるけど1000点問題は開けただけだし、肝心の500点問題はSystemTestで落ちたけど・・・ でもrateが若干増えたのでこの勢いに乗っていきたいところ。 250 与えられた最…

1Bが遠いよ

削れるペースが明らかに遅くなってきた最近です。 初期の方針を堅持しすぎなのかもしれない。 だけどもっといい手法も思いつかないというジレンマ。 いきなり頭がよくなったりなんてしないもんね、地道に頑張ろう。 Smileys Triangle putsもstrcatもchar型で…

Perlもちょこっと

気分転換にPerlにも手を出してみた。 場合にもよるだろうけど、やっぱりゴルフするには向いてるなあ。 Rubyも出力がpだけでできたりして反則的だと思うけど。 echo なんとか最短の7Bできた。 どう考えても8B以下って無理じゃないかと思ってたら、ブロックの…

そろそろ限界

今まで解いてきた問題は自分の技術だと、そろそろ縮められる限界点に到達したっぽい。 無駄を省こうにもどうやって省いていいものやら。 アルゴリズムが違うんだろうけど、今より短くできそうなのが思いつかないorz もっと考えるんだ!俺! 99 shinichiroes …

SRM445 DIV2

SRM444の250点問題が練習であっさり解けて、調子に乗ってたら結果はボロボロ。 自分で自分のを撃墜できるのがわかった時のやるせなさと言ったらない。 こっちもちゃんとやっておかないとな・・・ 300 暗号化した文章を出力しろっていう問題。 また悪い癖が出…

牛歩戦術

牛の歩みより遅いかもしれないコードの削り量。 だけど着実に減らして行けてるのがなんとなく嬉しい今日この頃です。 Smileys Triangle そろそろスマイリーさんを眺めるのはお腹いっぱいになりつつあるけど頑張ってます。 やっと二重ループの解消とputs一発…

なかなか縮まない

ここ数日、99 shinichiroes of hamajiとSmileys Triangleの短縮に挑んでいた。 263Bと82Bに縮んだけども、どちらも頭打ち感が漂ってきた。 現状のアルゴリズムだとこれが限界なのか、それとも気が付いていない何かがあるのか。 恐らくは後者だ!いや、後者で…

スマイリー

トップ集団の人達は住んでる次元が違うんじゃないかな! 微妙な成績で送信履歴を埋めてしまうのが申し訳なくなってくるけど許して下さいましorz Smileys Triangle 笑顔が眩しいナイスガイ、スマイリーさんを出力せよとのこと。 目と鼻と口、口口口・・・どん…

ゴルフゴルフ

先に進めば進むほどトップ集団との差が激しくなってくるけど とりあえず今はあまり気にしないで詰められるところを詰めていこう。 99 shinichiroes of hamaji 何・・・?ビールじゃない・・・だと・・・? 取ったり回したり買ってきたりするのか。 何という…

anarchy golf

さすがの俺も半年放置には猛省・・・! SRMにも最近全然参加できてないし、本も小説ばっかりでこっち関係は大放置。 こりゃいかんということでanarchy golf始めたので、しっかり記録を取っていこう。 Short Coding読みつつ、C言語で過去問から少しづつ解いて…

SRM433 DIV2

大分間が空いてしまったけど今回は参加できた。 得点したけどrateは下がってしまったという。 Easy取ったくらいじゃDIV1には上げてやらんぞということかな。 以下感想。 250 翻訳エンジンに丸投げして例題見たらすぐわかった。 ソートして計算しておしまい。…

SRM152-159のDIV2 Easyを解いてみた

前回から大分間が空いてしまったけれど、8回分解き終わったので感想。 200点台には届かないものの、慣れもあってか100点台後半には乗るようになってきた。 が、システムテストで叩き落される事も増えてきたので何とも言えないなあ。 書いてあるテストは通っ…

SRM430 DIV2

ポイント取れるかと思ったら結局取れなかった。 感想をつらつら。 275 問題は早い時点で察しがついた。 後は形にするだけだったのに、解き方を何度も変更して結局形にならず時間切れ。 上手く解こうとか思わないことが大事だった。 それはちゃんと力がある人…

プログラミング作法読了

2時間で30ページも読めないこともあったけど、じわじわ読み進めてめでたく読了。 初っ端一章のコーディングスタイルから、手痛い一撃食らった。 良くない例に出てるようなものとか書いてたしなあ。 直すようにとは思ってるけど本当に直ってるか心配だ。 それ…

SRM144-151のDIV2 Easyを解いてみた

参戦するからには最低毎回Easyは正解できないといかんと思い、ひたすら解いてみた。 改めて技量と英語力の無さを痛感しつつ、思ったことや使えそうなことを書いておく。 問題を開いたらとりあえず全文翻訳エンジンへ 下手に読もうとするより日本語で読める分…

Hello World!

Hello World!