pannenkoek2012 zielt darauf ab, Super Mario 64 mit so wenig Drücken wie möglich der A-Taste zu beenden , was Mario zum Springen bringt. Jede "A-Presse" besteht aus drei Teilen:
- Drücken Sie die Taste
- Halten Sie es für eine beliebige Zeitdauer
- Loslassen
In diesem Video (1:15 - 3:23) finden Sie eine gute Erklärung, die das obige Bild enthält. (Diese Herausforderung wird jedoch nicht die Halb-A-Presse-Terminologie verwenden und wird Hindernisse aufzeigen, die das Freigeben von A erfordern.)
Aufgabe:
Bei einer bestimmten Anzahl von Hindernissen, die das Drücken (P), Halten (H) oder Loslassen (R) der A-Taste erfordern, wird die kleinste Anzahl von Drücken ausgegeben, die erforderlich sind, um diese Hindernisse in der angegebenen Reihenfolge zu überwinden. Die A-Taste wird zunächst nicht gedrückt.
Formell ausgedrückt: PHR
Betrachten Sie bei gegebener Zeichenfolge S (PH*R)*
als Teilfolge Zeichenfolgen , die S enthalten, und geben Sie die kleinstmögliche Anzahl von Zeichen P
in einer solchen Zeichenfolge aus. Oder finden Sie alternativ die kleinste Anzahl von Stücken der Form P?H*R?
, in die S aufgeteilt werden kann.
Beispiel
Schauen wir uns die Eingabe an RHRPHHHR
. Die A-Taste wird nicht gedrückt gehalten. Um das ursprüngliche Hindernis zu überwinden, R
muss die Taste gedrückt und dann losgelassen werden (Taste 1 drücken). Als nächstes müssen wir den Knopf H
gedrückt halten , was wiederum erfordert, dass er zuerst gedrückt wird (drücke # 2). Anschließend kann es wieder freigegeben werden, um das Nachher zu befriedigen R
. Zum Schluss kann der verbleibende PHHHR
Teil durch einmaliges Drücken (Drücken Sie # 3) und anschließendes Halten HHH
und Loslassen befriedigt werden R
. Die Ausgabezählung ist also 3.
Eine andere Möglichkeit, dies zu sehen, besteht darin, dass wir die Eingabezeichenfolge in drei Formularteile aufteilen können, in PHH..HHR
denen Buchstaben weggelassen werden können.
R
HR
PHHHR
Eingabeformat
Die Eingabe ist eine Liste oder eine Folge von Elementen, die das Drücken, Halten und Loslassen wie folgt darstellen:
P, H, R
p, h, r
1, 2, 3
0, 1, 2
in der angegebenen Reihenfolge abgeglichen. Die Eingabe wird nicht leer sein.
Testfälle:
P 1
H 1
R 1
HP 2
RHP 3
HHR 1
PHRH 2
RHRPHHHR 3
HHHHHH 1
PPRRHHPP 6
HPPRHRPRHPPRHPPHRP 12
PRHRHPHHPRRRHPPRHHPPRRRHRHPRPHPRPRHHRPPPRHPRP 28
Bestenliste: