Die Hanteln in meinem Fitnessstudio sehen so aus:
=========[]-----------------------[]=========
Sie können Teller in fünf verschiedenen Größen, 2,5 Pfund, fünf Pfund, zehn Pfund, 25 Pfund und 45 Pfund halten:
.
. ! |
. ! | | |
| | | | |
' ! | | |
' ! |
'
Aus Sicherheitsgründen fügen wir auch einen Clip ]
oder [
, falls vorhanden , einen an der Außenseite aller unserer Platten hinzu. Die Bar selbst wiegt 45 Pfund. Wir legen immer die schwersten Platten, die der Mitte am nächsten sind, ohne Lücken zwischen den Platten, und legen identische Platten auf beiden Seiten. Wir verwenden auch immer die geringstmögliche Anzahl von Tellern, z. B. verwenden wir niemals zwei Fünf-Pfund-Teller auf einer Seite anstelle eines einzelnen Zehn-Pfund-Tellers. Wenn ich also 215 Pfund heben möchte, sieht meine Leiste so aus:
. .
.!| |!.
!||| |||!
====]||||[]-----------------------[]||||[====
!||| |||!
'!| |!'
' '
Ihr Code, eine Funktion oder ein vollständiges Programm, muss eine Ganzzahl von 45 bis 575, immer ein Vielfaches von 5, annehmen und den Balken ausgeben, der sich zu dieser Gewichtung addiert. Beispielsweise:
Eingang: 45
Ausgabe (beachten Sie, dass sich auf einer leeren Leiste keine Clips befinden):
=========[]-----------------------[]=========
Eingang: 100
Ausgabe:
! !
.| |.
======]||[]-----------------------[]||[======
'| |'
! !
Eingang: 575
Ausgabe:
..... .....
.!||||| |||||!.
!||||||| |||||||!
]||||||||[]-----------------------[]||||||||[
!||||||| |||||||!
'!||||| |||||!'
''''' '''''
Sie können Leerzeichen in jeder Zeile setzen oder auch nicht, aber Ihre Ausgabe darf keine führenden oder nachgestellten Leerzeilen enthalten (die Ausgabe für 45 sollte eine Zeile sein, für 50 sollten drei Zeilen sein, für 65 sollten fünf Zeilen sein usw.).
Das ist Code Golf, der kürzeste Code gewinnt!
print
?