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.