第4回HOJコンテスト結果

http://karu.ninja-web.net/hoj/contest4.html
3位でした。圧縮負けしました。


1124[Contest 4A - 1 Magic square] 8B

a:lsrsa
la

まあ普通に

1125[Contest 4A - 2 Rice field 2] 18B

a:srsrsrrs
b:aaar
c:bbbbrc
c

適当に書くとこうなるので3倍と4倍を両立させた関数で

f(X,Y):XXXYYYYr
f(,f(,f(f(sr,)s,)))

1126[Contest 4A - 3 Aho modoki] 30B→29B
適当に書いて

a:srsl
b:crcccardccdarccb
c:ad
d:aar
b

ar=srsというところがもったいないのでなんとかすると

a:dl
b:crcccdadccaddccb
c:aad
d:srs
b

1127[Contest 4A - 4 Oba-chans] 20B

a:ssr
f(X):Xrrf(aaslasrrX)
f()

XXrrを使うだろうとは思ってたけど何故かうまくいかなかった・・・

1128[Contest 4A - 5 Center piece] 40B→27B

a(X,Y,Z):XXXXZZZZa(lsrYXrZrYls,sY,rslYZlXlYrs)
a(r,,l)

無駄に分けて育ててたのを統合して

a(X,Y):XXXXa(srYlXYYrXrrYrsr,sY)
a(r,)

方向転換をrrにする方も書いたけど初項無しで行けるのは気づかなかった。

1129[Contest 4A - 6 Sharp 3] 27B

f(X):XrX
a(X,Y):f(f(Xf(f(YrrY))lX))a(sX,f(s)lY)
a(,)

中心に戻らなくてもいいとは…これは完全に経路負けしました。

1130[Contest 4A - 7 BARUSU!!w] 34B→31B→29B

a(X,Y):Xlsra(sX,Y-1)
b(X):rslb(X-1)lsr
c:ra(,5)b(10)sb(10)c
c

直線部分の回収を改善して

a(X,Y):Xlsra(sX,Y-1)
f(X):XX
f(f(f(rf(f(ss)s)rs)ra(,5)s))

なんとかn倍関数と両立できないかと試行錯誤して(結局できてない)

a(X,Y,Z):YlXra(X,sY,Z-1)
b:a(rra(,,5),,2)sra(s,,5)sb
b

1131[Contest 4A - 8 Branches] 23B

f(X,Y,Z):XYf(ZYYZr,ZXXZl,ZZ)
f(l,r,s)

簡単。

1132[Contest 4A - 9 Boss crystal] 24B

a(X):XXXsXa(sslsrXslssr)
ra(ssr)

rsl使うとは・・・