各章にあったまとめをざっと抜き出しておきます。
0章
ロボットのアルゴリズム
1.ランナーが同じ高さにいて、地続きの場合、ランナーのほうへ行く。
2.ランナーのいる高さに行ける場合、そこへ向かう。
3.ランナーのいる高さに行けない場合、行ける場所から優先順位の高い位置へ向かう。
1がダメなら2、それもダメなら3のアルゴリズムで動きます。
1章 地続きって何だ?
こういうこと。
2章 行ける場所ってどこだ?その1
行ける場所は縦視界から探しますよ。
視界のまとめ
・ロボが横移動できる範囲が横視界。
・横視界から上に行ったところが上方向の縦視界。
・横視界から下にのびるのが下方向の縦視界。
・両方の縦視界から行ける場所をさがす。
3章 行ける場所ってどこだ?その2
上方向の縦視界内の、以下のどれかを満たす場所
・上方向の縦視界内のはしごの頂上の地点
・上方向の縦視界内のはしごで、横にバーがある地点
・上方向の縦視界内のはしごで、斜め下にはしごかレンガかコンクリか掘ったレンガがある地点。これらが行ける場所。
下方向の縦視界内の、以下のどれかを満たす場所
・下方向の縦視界内の、床(レンガ、掘ったレンガ、コンクリ)の上
・下方向の縦視界内の、条件を満たしたオブジェクト
3章続き 縦視界(下)の行ける場所
上記の「条件」について書いてあります。
ランナーより下で、はしごとかの斜め上に金塊があったりすると条件を満たすよ。
4章 どこ行こう?
アルゴリズム2について。
ランナーの高さに行ける場合、
・それが1か所だけならばそこへ向かって歩く。
・それが2か所以上の場合、その、近いほうへ行く。
・距離が同じな2か所が候補の時、左側を選ぶ。
・ロボがいる場所と、その行きたい先が同じの場合、下に降りる動作をする。
5章 優先順位はどうなっている?
アルゴリズム3について。
ランナーの高さに行けない場合、
・ランナーより高い位置に行きたがる。
・ランナーより低い位置にしか行けない場合、そのいちばん高いところへ行きたがる。
・行きたい高さに行ける場所が複数ある場合、ロボの真下が優先。
・真下以外の複数の場合、左側に行ける場所があればそっちへ。なければ右へ。
・ロボがいる場所と、その行きたい先が同じの場合、下に降りる動作をする。
6章 でも最下段には当てはまらないの?
最下段のかわりに地下帝国があるものとしてみれば、当てはまります。
7章 一握りの例外。
ランナーではしごが隠れたり、ロボットでバーが隠れたりするとややこしいことに。