Bestimmen Sie anhand der Seitenansicht eines Minigolfplatzes und der Schlagkraft, ob der Ball es in das Loch schafft.
Ein Kurs wird in diesem Format sein:
____ ____ _
__/ \ / U \
__/ \ / \_
\_/
Der Ball beginnt direkt vor dem ersten Stück Boden links und folgt der Kontur des Platzes, bis er das Loch erreicht (ein Großbuchstabe U
unterhalb des aktuellen Bodenniveaus). Wenn es das Loch erreicht, geben Sie einen Wahrheitswert aus. Die Kraft des Schwungs ist die Anfangsgeschwindigkeit des Balls. Der Ball bewegt sich bei jeder Iteration zum nächsten Zeichen rechts, dann ändert sich die Geschwindigkeit in Abhängigkeit von dem Zeichen, auf dem er sich gerade befindet. Wenn die Geschwindigkeit 0
vor dem Loch erreicht oder darunter liegt, geben Sie einen Falsey-Wert aus.
_
verringert die Geschwindigkeit um1
/
verringert die Geschwindigkeit um5
\
erhöht die Geschwindigkeit um4
Kurse können optional mit Leerzeichen aufgefüllt werden. Die Kraft des Swings wird immer eine positive ganze Zahl sein.
Sie brauchen sich keine Sorgen zu machen, dass der Ball zu schnell ins Loch geht, rückwärts rollt oder von Hügeln springt / hüpft.
Testfälle
Input: 27
____ ____ _
__/ \ / U \
__/ \ / \_
\_/
Output: true
----------
Input: 26
____ ____ _
__/ \ / U \
__/ \ / \_
\_/
Output: false
----------
Input: 1
U
Output: true
----------
Input: 1
_
U
Output: false
----------
Input: 22
/U
/
/
/
\/
Output: true
----------
Input: 999
_ _
\ /
\ /
\ /
U
Output: true
----------
Input: 5
/
/U
Output: false
----------
Input: 9
/\/\/\/\/U
Output: false
----------
Input: 16
_/\ _
\ __ /\/\/\ /
\ / \ / \ /
\__/ \ / \____________ _/
\_/ U
Output: true
Dies ist Code-Minigolf, die kürzeste Antwort in Bytes gewinnt!
\/\/\/\/\/
ist ein effizienter Kurs als __________
.
\_/
mit den folgenden Schritten in einen Stream von Operationen ( ) umwandeln: In ein Array von Zeilen aufteilen, drehen, reduzieren, Leerzeichen entfernen.