Bild von mir, wie ich diese Herausforderung mit meinen fortgeschrittenen Zeichenfähigkeiten entwerfe.
Hintergrund
Die Stickman-Kriege ereigneten sich vor langer Zeit, als die dominierende Spezies der Erde nur aus Stöcken bestand. Historiker bedauern, dass es damals weder Maler noch Kameras gab. Wir könnten einige Bilder dieses Krieges in den heutigen Geschichtsbüchern verwenden. Hier werden Ihre Codierungsfähigkeiten nützlich. Strichmännchen lassen sich sehr leicht zeichnen, und Historiker konnten einige Daten darüber finden, wie viele Strichmännchen die Kriege geführt hatten¹. Jetzt liegt es an Ihnen, ein Bild des Augenblicks vor Kriegsbeginn zu erstellen!
Hier sind die mutigen Strichmännchen, die in den Krieg verwickelt sind:
O / | / | \ / | | / \ Schwertkämpfer OA / | \ | | | / \ | Spearman . . ' *. 'O * '\ | /. . | * './ \ *. Magier O / | \ | / \ Dorfbewohner O / | \ / \ Infant
Eingang
Erhalte über stdin oder ein Äquivalent eine Darstellung von jedem Stockmann, der auf jeder Seite des Schlachtfeldes erschien. Wenn zum Beispiel zwei Schwertkämpfer auf der rechten Seite und zwei Speermänner auf der linken Seite gekämpft haben, können Sie Folgendes eingeben {Sword: 2}, {Spear: 2}
: [2,0,0,0,0], [0,2,0,0,0]
oder a "WW", "SS"
.
Ausgabe
Eine Darstellung aller tapferen Strichmännchen auf einem Schlachtfeld gemäß den folgenden Regeln. Es kann auf stdout angezeigt oder in einer Datei gespeichert werden, unabhängig davon, was Ihr Boot bewegt.
Regeln
- Auf der linken Seite werden alle Stickmen des ersten Arrays / Strings / Objekts angezeigt, das Ihr Programm erhalten hat.
- Diese Strichmännchen müssen genau so aussehen wie die, die zuvor in dieser Frage gezeigt wurden.
- Die Reihenfolge der linken Armee muss sein
Infants Villagers Mages Swordsmen Spearmen
. - Die Armee der rechten Seite wird sich genauso verhalten, nur dass die Charaktere und die Reihenfolge gespiegelt sind.
- Jeder Strichmännchen wird durch 1 Leerzeichen getrennt.
- Jede Klasse wird durch 3 Leerzeichen getrennt.
- Die Armeen werden durch 8 Felder getrennt.
- Da Strichmännchen nicht fliegen, müssen Sie den Boden mit Bindestrichen zeichnen
-
. - Der Boden muss auf derselben Säule enden, auf der der letzte Stockmann der rechten Armee endet.
Beispiel
Nehmen wir an, mein Programm erwartet zwei Arrays mit der Länge 5 und jeder Wert im Array repräsentiert in der Reihenfolge Infants Villagers Mages Swordsmen Spearmen
.
Eingabe: [1,1,2,3,1] [0,0,1,1,1]
. . . . ' *. . ' *. . * '. O 'O *' O * O / O / O / OAAO \ O * O ' O / | \ '\ | /. '\ | /. | / | \ / | / | \ / | / | \ / / | \ | | / | \ \ / | \ | . \ | / ' / | \ | . | *. | * | | | | | | | | | | | | * | . / \ / \ './ \ *. './ \ *. / \ / \ / \ / \ | | / \ / \. * / \ '. -------------------------------------------------- -------------------------------------
Schlussbetrachtungen
Bitte beachte, dass Standardlücken gelten und der Magier nur deshalb völlig asymmetrisch ist.
Das Ergebnis der am besten bewerteten Antwort wird das "Titelbild" dieser Herausforderung sein. Die kürzeste Antwort bis zum Ende des Monats (31.08.2014) wird als Gewinner ausgewählt.
Das ist Code-Golf , also gewinnt der kürzeste Code in Bytes.
¹Zitat erforderlich
IVMMWWWS SWM
im Rahmen von "irgendetwas, das Ihnen hilft"?