TOY VOX

管理人VOX6336が昭和レトロな遊びをするだけのブログです。スマートフォンでの閲覧推奨。

アクロスザリバー

2020-04-12 04:24:25 | プログラミング初心者(プチコン3号)
「アクロス・ザ・リバー」
ポケコン全盛期のシンプルなパズルゲーム。

・ルール
川の左岸に4人の宣教師(missionary)と3人の土人(native)がいる。2人乗りのボートをつかってこれらを右岸に渡してほしい。
ただし土人は人食い人種であるため、各岸で宣教師の人数が土人の人数を下回ると宣教師は食べられてしまう。

以上である。現在の感覚からいえばコンプライアンス的にそれはどうかと思えるような内容だが、1980年代当時にはこれにわざわざ文句を言ってくるような人はいなかった。

プログラムはこんな感じ










では実際にパズルをといてみよう。
まずは左岸から右岸へ、土人を2人渡す。これは人数がかわっても第1手目の定跡だと思う。



つぎに右岸から左岸へ。ためしに宣教師1人、土人1人とするとエラーとなり、もう一度聞きなおしてくる。
そこで土人を1人、左岸へ渡す。





つぎに左岸から右岸へ。宣教師を1人、土人を1人渡す。右岸は宣教師1人、土人2人となりゲームオーバー。



じつは「画面はシンプルであるほうが、ゲーム自体の面白さが際立つ」というのがモットーであるが、すこし遊び心で船が移動する絵を描いてみた。





なお、もともとのルールは「宣教師3人、土人3人」だったが難しくてとても解けなかったので「宣教師4人、土人3人」にした。
数学が得意なかたは4行目「LP=4」のところを「LP=3」に書き換えて解いてみられてはいかがだろうか。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ブラックジャック 3 | トップ | 百人一首 1 »
最新の画像もっと見る

コメントを投稿

プログラミング初心者(プチコン3号)」カテゴリの最新記事