HerbertOnlineJudge

チュートリアル 007 解答例

Point 51, MaxBytes 11, 最下位1位 攻略のヒント 繰り返しのパターンはナルト型に似ている a(X):Xa(sX) a(r)"(sX)"を弄ることで条件を満たすパターンを形成できそう。 入力例 rrslsrrslsrslsrrslsrslsrslsrrslsrslsrslsrslsr... *このコードを圧縮すると12B…

Rule 式の評価順

HerbertOnlineJudgeの場合、式の内側、つまりカッコの内側から評価されて行きます。 例を追いながら見ていきましょう。 a(X):XXXX // プロシージャ定義部分 b(X):XXr // プロシージャ定義部分 c(X):X // プロシージャ定義部分 a(b(c(sss))) // 式実行部分 *…

Rule 式の評価順 その2

その2です。HerbertOnlineJudgeの場合、式の内側、つまりカッコの内側から評価されて行きます。 今回は前回の記事に少しのプラスアルファを加えます。 b(c(X)r)となったとき、 "r"はどう評価されるのか、例を追いながら見ていきましょう。 a(X):XXXX // プ…

実行可能なレシピ その2

id:quolcさんのSomething worthless to be written formallyからの引用です。8Bytes a(X):Xa(sX) a(r) 17Byets a(X):XXXX b:srsl a(a(a(b)r)r) 25Byets a(X):XXXX b(X):sb(X-1) c(X):a(a(b(X)r)r)c(X+2) c(1) う〜ん…、すごい。 この2日間頭をひねってもこん…

実行可能なレシピ

4Bytes 再帰処理 a:sa a 8Bytes 命令引き数プロシージャ(Procedure Command Arguments) 引数2の場合 a(X,Y):XY a(s,r) 11Bytes 再帰処理とPCA2の組み合わせ a(X,Y):XY b:a(s,r)b b 1Bytesの圧縮 11Bytes 命令引き数プロシージャ(Procedure Command Arguments…

チュートリアル 004

Point 8, MaxBytes 20, 最下位11位 20Bytes 11位 a(X):sa(X-1) f:a(8) c:lf fccfcfcf このMAPは003と同じく を4回繰り返す 8マス前身する処理を作る 左向いて8マス前進する処理を作る 1.と2.を組み合わせてMAPを巡回する 20Bytes 11位 a(X):sa(X-1) f:a(8) c…

チュートリアル 003

Point 4, MaxBytes 19, 最下位12位 19Bytes 12位 a(X):sa(X-1) b:a(24)rsrsrb a(11)lb MAPの角は を4回繰り返せばよいので 上下左右の●は○を通過するまで無視できるのでそのまま直進 角をグルリと回る操作を実行し、 再帰する 13Bytes 6位 a(X):sa(X-1) b:a(…

チュートリアル はじめに

ITmediaの高橋さんの記事からHerbertOnlineJugdeというアルゴリズムゲームを見つけた。Herbert Online Judge http://herbert.tealang.info/ 公式のチュートリアルでは理解しにくい所をここで公開、研究していきます。

チュートリアル 002

チュートリアル 002 ここでは再帰を使う ex. a:sa a プロシージャ"a"で"s"を定義し、再度プロシージャ"a"を呼び出す