第4回HOJコンテスト! その2

作問意図などを書きます。
ここに載せていない想定解等はHOJ voterで見て下さい。

B - 1 Hospital

x:sssr
a:xxra
a

11B
無限ループ+置換でbest

B - 2 Eight pints

f(F):FFFFr
f(f(f(srsl)))

14B
この関数を使いこなせるか。
に見せかけた引っかけ問題w

B - 3 Roll

うまく数列を作る問題。
いろいろ書き方があって、コンテスト向きかな〜と。

a(A):AssAa(sssA)
a(r)

13B

a(A,B,C):Aa(sBA,C,B)
a(r,s,)

14B

a(A,B):Ara(ssB,sA)
a(,)

12B
コンテスト中に12Bが出ているあたり、さすがですね〜

B - 4 Binary cross

a(A):ArrAra(AA)
a(srsl)

15B
Aに "r" を含めると劇的に縮みます。

a(A):ArAa(AlA)
a(srs)

13B

B - 5 Eye

f(F):FFFr
f(rf(f(f(s))))

13B
今度こそ関数の使いこなし。

B - 6 River

書き方に迷うはず。

x:ssss
a(A):xrArxa(sA)
ra()

17B

a(A,B):Aa(As,B-1)
ra(ra(,8)r,26)

方針を変えた16B

a(A,B):ra(sA,B-1)A
a(a(,9)r,25)

縮めて、15B
さすがにコンテスト中のbestは17Bでした。

B - 7 Teatime

長めの問題。
珍しく形から作りました。
映画見たいな!!


Contest 4A - 1 Magic square

魔法陣になっていないという致命的な・・・・

a:lsrslssa
a

10B
いったんこれで間違えてくれるかな〜、など

A - 2 Rice field 2

コンテスト中には想定解に追いつかれませんでしたその1。
3倍+4倍+方向転換のうまい補助関数を作れば勝ちです。

A - 3 Aho modoki

数学ゲーのつもりでしたw
3の倍数のときと、1の位が3のときに "r" という規則でした。
best解はすごく綺麗ですね・・・

A - 4 Oba-chans

コンテスト中には想定解に追いつかれませんでしたその2。
17B解が出来れば、補助関数を少しいじると あるところが1B縮みます。

A - 5 Center piece

タイトル通りまんなかのピースです。(昨日の記事を参照)
規則が分かれば27Bになります。

a(A,B):AAAAa(srBlAllBBrABrsl,sB)
a(r,)

少しいじると

a(A,B):AArAAa(srBlArBBrAlBrs,sB)
a(,)

26Bに出来ます。
コンテスト中に想定解を抜かれて、慌てて考えましたその1。

A - 6 Sharp 3

コンテスト中に想定解を抜かれて、慌てて考えましたその2。
最初は、26,7Bあたりを想定していて
「差がつかなさそうだな〜」
とか思っていたら23Bにされていて驚愕しました。

f(F):FF
a(A):f(f(f(AlA)A))sa(Asrsl)
a(l)

22B
"行って帰って"をするのはムダで、こうすると引数が減ります。

A - 7 BARUSU!!w

タイトルが思いつかなかったので、こうなりましたw
数値関数の問題にしました。
関数を作ってから、それを生かせるような図にしました。

a(A,B,C):Asa(AB,B,C-1)r
a(a(ra(,,9),,4)a(,rsl,5),,4)

25B
違う25Bも可能だそうです。

A - 8 Branches

経路認識ゲーです。
構造を掴めばコードは23Bになるはずです。

a(A,B,C):ABa(CBBCr,CAACl,CC)
a(l,r,s)

左右交互に枝が出ている感じです。

A - 9 Boss crystal

f(F):rslFs
a(A):AAAf(Aa(f(f()Af())))
a(f(r))

22B
新テクじゃね? と思いながら出しましたが、
zephoriaさんはもうすでに使っていたテクだそうです。ぱない
どの問題かなぁ?


ご参加ありがとうございました!
次回のコンテストのA問題はpastaさんが担当して下さるそうです。
wktk