プログラム迷路 (1)

下図の迷路で、与えられた命令数で「始」から「終」まで自動的に進むことのできるロボットのプログラムを考えてください。

ただし、プログラムで使うことのできる命令は、右(右に1マス進む)、左(左に1マス進む)、上(上に1マス進む)、下(下に1マス進む)の4種類だけであり、プログラムは自動的にループする(最初に与えられた命令の最後まで来たら、自動的に最初に戻って繰り返す)ものとします。また、迷路の外周や仕切り線を超えては進むことができず、そちらに進む命令が出た場合には、その場に立ち止まるものとします。

(例題)

┏━┯━┯━┯━┓
┃   |  終┃
┠ ┼ ┼ ┼―┨
┃   |   ┃
┠ ┼ ┼ ┼―┨
┃ |     ┃
┠ ┼ ┼ ┼ ┨
┃始      ┃
┗━┷━┷━┷━┛

プログラム:4命令

(例題解答)右右左上

┏━┯━┯━┯━┓
┃   |h→終┃
┠ ┼ ┼↑┼―┨
┃   |f⇔g┃
┠ ┼ ┼↑┼―┨
┃ |c→d⇔e┃
┠ ┼↑┼ ┼ ┨
┃始→a⇔b  ┃
┗━┷━┷━┷━┛

始(右)a(右)b(左)a(上)c

(右)d(右)e(左)d(上)f

(右)g(右)[動けない]g(左)f(上)h

(右)終

(問題)

┏━┳━┳━┳━┳━┓
┃        終┃
┣━╋━╋━╋ ╋━┫
┃ ┃       ┃
┣ ╋━╋ ╋ ╋ ┫
┃   ┃   ┃ ┃
┣ ╋ ╋ ╋ ╋ ┫
┃         ┃
┣ ╋ ╋━╋ ╋━┫
┃始        ┃
┗━┻━┻━┻━┻━┛
プログラム:4命令
支援ツール独立画面へ

プログラム迷路 (1)」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  1. 右右左上

    × × × ○―終
    ━ ━ ━ | ━
    ×┃× ○―○―○
      ━ |    
    × ×┃○―○┃×
        |    
    × ○―○―○ ×
      | ━   ━
    始―○―○ × ×

    time=04:54