Erstellen Sie bei drei Ganzzahlen> = 2 einen ASCII-Würfel in einer orthogonalen (Kabinett-) Projektion. Die drei Ganzzahlen stehen für Höhe, Breite und Tiefe (gemessen in sichtbaren Zeichen) einschließlich der Ecken. Die Ecken sollten 'o's' oder '+' sein, freie Wahl.
w: 10, h: 5, d: 4 So ergibt sich:
o--------o
/ /|
/ / |
o--------o |
| | o
| | /
| |/
o--------o
Um dies etwas zu erschweren, können nun alle Gesichter entweder fest, transparent oder fehlend sein. Wir bestellen die Gesichter so:
o--------o
/ /|
/ 2 / |
o--------o 3|
| | o
| 1 | /
| |/
o--------o
---
|2|
-------
|5|1|3|
-------
|4|
---
|6|
---
Und liefern Sie eine Liste von Token, S, T oder M. Das ursprüngliche Beispiel lautet also:
w 10
h 5
d 4
S S S S S S
o--------o
/ /|
/ / |
o--------o |
| | o
| | /
| |/
o--------o
Wenn ein Gesicht transparent ist, können wir alles sehen, was dahinter steckt:
T S S S S S
o--------o
/ /|
/ / |
o--------o |
| o-----| o
| / | /
|/ |/
o--------o
T T T T T T
o--------o
/| /|
/ | / |
o--------o |
| o-----|--o
| / | /
|/ |/
o--------o
Bei fehlenden Flächenpaaren sind benachbarte Kanten oder Ecken nicht mehr sichtbar:
M M S S S S
o--------o
/| /|
/ | / |
o | o |
| o-----| o
| / | /
|/ |/
o--------o
M M S S M S
o--------o
| /|
| / |
| o |
o-----| o
/ | /
/ |/
o--------o
Codegolf, der kürzeste Code gewinnt! Nachgestellte Leerzeichen und Zeilenumbrüche sind in Ordnung. Sie können die Eingabemethode und die Eingabereihenfolge frei wählen.
you're free to choose input method and input order
. Und wie nichts anderes sagt, kann jede der Standard-Eingabe- / Ausgabemethoden verwendet werden.