現在地:第二段階修了
第二段階から、メモリ要素が追加されました。
記述が楽になった!画期的だ!と最初は喜びましたが、記憶ができるようになった分、高度な処理を要求されるようになり、悩むステージも増えました。
特にcalcは、上手く活用できると非常に小気味良い働きをするのですが、なんせ数字に弱いので思い通りに動かせず、一手ずつ確認してはミス修正の繰り返しです。
とはいえ、行数目標・スピード目標を同時達成できると、やっぱりメモリは偉大だな!と思うので、やっぱり道具は使いようですね。
今回のプレイ範囲では、目標達成速度が極めて遅いと、動作はできていても未クリア扱いになることが分かりました。
引っ掛かったのは30年目「床いっぱいに」。
素直に、機能解禁されたランダム動作で空きスペースを埋めるようにしたところ、算出不能な時間を叩き出してしまい、怒られました。まぁ、自分でも無駄な動きが多いと思っていたのですが、「なにもないところ」を認識して移動させる方法がないので仕方なかったと思います。一列ずつ決まったルートを移動させたりすれば、時間は短縮できるのでしょうか。
結局、最終的にも170秒のスピード目標に対して448秒で実行完了という、なんとも評価し難い成果で押し切ってしまいました。
42年目「メール振り分け」も、あまり誇れない成績でしたね。
また、このステージはシュレッダーについてる番号パネルを拾わないようにする、という点でも悩まされました。結局ifに頼ってしまったけれど、いまいちスマートじゃないのですよね。
できることが増えたといっても、使えるコードはまだまだ限られているので、発想力が試されていると感じます。基本ステップとして出題されても、解法が浮かばないと手も足も出ないし、逆に難問ステージでもサッと解けることもあります。
「最小はどれだ」のお題は3回登場しましたが、1のステージで全くよろしくないコードを書いてしまったので、「使い回すと良い」と言われて困って、結局書き直しました。
お陰で、1のステージが一番成績が悪い状態で残りました。
設問を勘違いしちゃうことも多く、粗忽!と思いました。
たとえば43年目「掛け算表」では、「触れないようにしてください」を、上に乗ってもいけないの意味だと受け取って、左から何番目かで自分の列番号を割り出すか?などと不可能なことを考えていました。
持ち上げなければ良いだけだったのですね。でもこれは翻訳のミスな気がしますよ!
44年目「ユニークなパーティ」は、最初、部屋に入る前に数字順に並ばせて、各一人部屋に入れるのかと勘違いして、メモリには四つしか記憶できないのにどうやるんだと頭を抱えました。
一度部屋に入っても良いから、最終的に各数字を一人だけ残せば良いんだ、と気付いたら簡単に解決できました。
スピード目標を達成はできていないけれど、無駄のない動きをするのでなかなか気に入っているコードです。