(Mit einer Entschuldigung an Jim West für den Titel und nach dem Zufallsprinzip inspiriert von Ciscos textueller Darstellung ihres Logos: .:|:.:|:.
für das Konzept)
Ausgeben einer 1 <= n <= 255
ASCII-Grafikdarstellung einer Hängebrücke mit einer bestimmten Ganzzahl gemäß den n
folgenden Konstruktionsregeln:
- Der Anfang und das Ende der Brücke (in der
n
Entfernung nicht mitgezählt ) sind immer-|
und|-
, sodass die Brücke in geeigneter Weise mit den Autobahnen daneben verbunden werden kann. - Die Brücke erstreckt sich nicht nach unten (die Fahrbahnebene, bestehend aus der
-
Reihe, ist die unterste Reihe). - Es können höchstens zwei Fahrbahnstücke
--
hintereinander liegen, für eine längere Spannweite sind Tragseile zur Abstützung erforderlich. - Die Tragseile
\
verlaufen|
geradlinig von der Fahrbahn bis zu den Türmen . - Die Türme
|
müssen hoch genug sein, um die angrenzenden Aufhängungskabel zu tragen, dürfen jedoch nicht höher sein. - Die Brücke muss um den Mittelpunkt von links nach rechts ausbalanciert sein, wobei die Mittelteile nach Möglichkeit bevorzugt werden.
- All dies sollte zu einer Minimierung der Kabel führen. Um jedoch klar zu sein, muss die Anzahl der Aufhängungskabel minimiert werden, während die obigen Regeln eingehalten werden.
Zur visuellen Darstellung sind hier die erwarteten Ausgaben für n = 1, 2, 3, ... 15
:
1
-|-|-
2
-|--|-
3
-|\-/|-
4
-|\--/|-
5
|\ /|
-|-\-/-|-
6
|\ /|
-|-\--/-|-
7
|\ /|
| \ / |
-|--\-/--|-
8
|\ /|
| \ / |
-|--\--/--|-
9
|\ /|
| \ / |
| \ / |
-|\--\-/--/|-
10
|\ /|
| \ / |
| \ / |
-|\--\--/--/|-
11
|\ /|
| \ / |
| \ / |
|\ \ / /|
-|-\--\-/--/-|-
12
|\ /|
| \ / |
| \ / |
|\ \ / /|
-|-\--\--/--/-|-
13
|\ /|
| \ / |
| \ / |
|\ \ / /|
| \ \ / / |
-|--\--\-/--/--|-
14
|\ /|
| \ / |
| \ / |
|\ \ / /|
| \ \ / / |
-|--\--\--/--/--|-
15
|\ /|
| \ / |
| \ / |
|\ \ / /|
| \ \ / / |
| \ \ / / |
-|\--\--\-/--/--/|-
Eingang
Eine einzelne positive ganze Zahl in jedem geeigneten Format , n > 9
.
Ausgabe
Die ASCII-art Brücke folgt der obigen Konstruktionstechnik.
Regeln
- Führende oder nachfolgende Zeilenumbrüche oder Leerzeichen sind optional, sofern die Brückenzeichen selbst korrekt ausgerichtet sind.
- Es ist entweder ein vollständiges Programm oder eine Funktion zulässig. Bei einer Funktion können Sie die Ausgabe zurückgeben, anstatt sie zu drucken.
- Fügen Sie nach Möglichkeit einen Link zu einer Online-Testumgebung hinzu, damit die Benutzer Ihren Code ausprobieren können!
- Standardlücken sind verboten.
- Dies ist Codegolf, daher gelten alle üblichen Golfregeln, und der kürzeste Code (in Byte) gewinnt.