Hier ist ein Diagramm eines Gefängnisses mit ASCII-Zeichen:
+------------------------------+
| |
| X X |
| |
| D
D |
| |
| |
| X X X |
| |
+------------------------------+
Wände bestehen aus Pipe-Zeichen |
, Strichen -
und Pfeilern +
für Ecken und Kreuzungen. Es gibt auch zwei mit gekennzeichnete Türen D
(die sich immer an der linken und rechten Wand befinden). Das Gefängnis ist mit unheimlichen Menschen gefüllt, die mit gekennzeichnet sind X
.
Das Ziel ist es, Mauern zu bauen, um die folgenden Anforderungen zu erfüllen:
- Jede Person ist in Einzelhaft;
- Zwischen den beiden Türen verläuft ein Korridor.
- Jede Zelle enthält genau eine Tür, die direkt mit dem Hauptkorridor verbunden ist;
- Der gesamte Raum im Gefängnis wird von den Zellen und dem Korridor genutzt.
- Jede Zelle enthält eine Person (dh es gibt keine leeren Zellen).
Der Korridor ist ein einzelner Pfad, zweigt nicht ab und ist immer ein Zeichen breit. Hier ist eine Lösung für das Gefängnis oben:
+---------+--------------------+
| | |
| X | X |
| | +--------+
+------D--+-----D-----+ D
D +---D--+
+----D--------+---D-----+ |
| | | |
| X | X |X |
| | | |
+-------------+---------+------+
Sie können davon ausgehen, dass jedes Eingangsgefängnis immer einen gültigen Ausgang hat. Hier sind einige weitere Input-Gefängnisse zusammen mit möglichen Outputs:
+------------------------------+
|X X X X X X X X X X X X X X X |
| |
D D
| |
| X |
+------------------------------+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+
|X|X|X|X|X|X|X|X|X|X|X|X|X|X|X |
+D+D+D+D+D+D+D+D+D+D+D+D+D+D+D-+
D D
+----------------------D-------+
| X |
+------------------------------+
+-----------+
|X |
| |
| |
|X X|
| |
| X|
| |
D D
+-----------+
+-+-------+-+
|X| D |
| D +---+ | |
+-+ | | |
|X| | +---+X|
| | | | +-+
| D | | X|
+-+ | +-D---+
D | D
+---+-------+
+----------------+
|X X X X|
| |
D |
| |
|X X X |
| |
| |
| |
| X X D
| |
| |
+----------------+
+---+---+----+---+
|X | X | X | X|
+--D+--D+---D+--D+
D |
+---+---+------+ |
|X | X | X | |
+--D+--D+---D--+ |
| |
| +-----+------+-+
| | X | X | D
| +----D+---D--+ |
| |
+----------------+