トップ 最新 追記

U-memo

2006|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|08|
2009|08|10|
2010|02|03|
2011|11|12|
2012|04|
2016|02|
All= / Today= / Yesterday=

2007-03-02 [長年日記]

_ [Golf][OCaml] あなごる、ばなー

思いつきで出題したものの、OCaml でどうするなんて全く考えてませーん。

_ [Golf][OCaml] あなごる、突然変異かっていう勢いだなぁ

  • echo で29Bってどんな入出力関数があるというんだろう。
  • hamming number で 103B って何をしたんだろう。

_ [Golf][OCaml] あなごるバイナリ圧縮

Marshal 使うのかと思ったけど、そもそもあまり短くならない(っていうかヘッダ大きすぎ)うえに、復元呪文が長すぎてダメだなぁ。 内部表現をそのまま持っていければ短くはなるはずなんだが、手段がわからん。


2007-03-06 [長年日記]

_ [Golf][OCaml] echo29B

ようやく見つけた。 同様の方針で rotate lines をやったらなんか抜いてしまった。

(追記) と思ったのもつかの間、また抜かれてる。


2007-03-07 [長年日記]

_ [雑記] 東工大のA.O.入試数学(激遅)

ニュースになった例の?プールの問題を住井先生が 話題にされたので 初等幾何での解き方をおおざっぱに図解。 (以前内輪で書いたものを出しただけという)

ans.gif

左の図が途中経過で、右の図が最終図。

  1. 正方形ABCDがプールの外枠で、AB'=2AB,AD'=2AD となる延長点B',D'をとる。(縁の移動は倍速だから)
  2. B',D'それぞれからAを中心とする円弧(半径AB)に接線を引くと、この直線がAB,AD上から泳ぎ出したときに10秒後に到達する点集合。
  3. AB'=2ABなので、この直線の傾きは 30°。1:2:√3 の関係が使える。
  4. 次に、右図にうつって、BC,DC辺から泳ぎ出したときを考える。点Cから、B,Dそれぞれを中心とする円弧(半径はABの半分)への接線を書くと、これがBC,DC辺から泳ぎ始めたときの10秒後到達点。これも角度30°。
  5. つまり、斜線の矩形領域が10秒後に到達できない領域になる。
  6. 後はプールの中だけの話なので、この矩形のどの辺からも最大の距離になる点が求めるべき最長時間になる点であり、それは矩形の内接円(斜線の円)の中心である。
  7. ゆえに、円弧の半径を初等幾何的に(相似の関係などを使って)求めて10を足したのが答え。

しかし、厳密に論証するのは面倒臭いよね、これ。 どこまで書くことを要求されてるのかを考えると、 こういう出題は結構入試には酷じゃないだろうか。 答えを出すだけだったら楽な部類だろうけど。

_ [Golf][OCaml] あなごる swap lines

なんでkskさんたら記録が縮むんだ?と思ったら、 いつのまにやら入力の最後に改行が付くようになってたのがポイントですね。 出題当初はこのコードでは通らなかったはずだ(最後がおかしくなる)

それとも私の記憶ちがい?

(追記) 記憶違いと勘違いの複合技でした(ツッコミ参照)。 今でも入力の最後に改行は付かないです。

∴ kskさんと同一コードなのでしょう。

本日のツッコミ(全2件) [ツッコミを入れる]

_ ksk [入力の最後に改行ついてます? 先ほどsubmitしたジャンケンの入力には最後の改行がなかったようですが…. (そのた..]

_ うかい [あらららら、勘違いみたいです。 当時は何にハマってたんだろうか... あ、思い出した。OCamlじゃなくてPer..]


2007-03-15 [長年日記]

_ [Golf][OCaml] あなごる Smiley

学会でOCamlでgolfすべきと唆されたらしいk.inabaさんにさっくりと抜かれたのでがんばって抜き返した。 が、kskさんにはまだ2Bとどかなーい。

# そもそも ksk さんにはほとんどの問題で負けてるし

本日のツッコミ(全3件) [ツッコミを入れる]

_ ksk [すみません.唆したのは私です. みんなでOCamlのlanguage rankingを上げましょう.]

_ うかい [おもわず Hamming で他の言語のスコアを上げてしまった...]

_ ksk [私もうっかり上げてしまいました.]


2007-03-22 [長年日記]

_ [雑記] なんかしらんが

期末だからというわけじゃないが忙しいぞ。

  1. 半分くらい自業自得 (夏休みの宿題を先伸ばしにする子

2007-03-23 [長年日記]

_ [Golf][OCaml]あなごる Hamming

ハミング数、遠くはなされてしまったが 何をすれば縮むのか見当がついていなかった。

  • 素朴に 2,3,5で割りまくって 1 になるかどうかを試した物(123B)
let rec(%)n v=if n/v*v=n then n/v%v else n
let rec(@)i n=i-Obj.magic(i/i=n%5%3%2&()=Printf.printf"%d
"n)@n+1;;read_int()@1
  • マーキングする方法はぱっとしない。

が、書いているうちに気づいた。 でも 83B にならないぞ。あとの 3B はなんだ?

Statistics を比較すると、記号を増やしてもいいからって、アルファベットが減るようなコードにはなってないんだけどなぁ。全く違うのか?

perl で書いたらトップになっちゃったよ。 じゃ、方針は間違ってないのかなぁ。わからぬ。

(追記)perl で詰めたら flaたん(ruby)抜いたよ