Menu
CoddyTech

Climbing Stairs

Du stehst am Fuß einer Treppe mit n Stufen. Bei jedem Schritt gehst du entweder 1 oder 2 Stufen hinauf. Zwei Aufstiege zählen als unterschiedlich, wenn sich ihre Schrittfolgen unterscheiden, also sind 1, 2 und 2, 1 zwei Möglichkeiten. Deine Funktion erhält n und gibt die Anzahl der verschiedenen Möglichkeiten zurück, die oberste Stufe zu erreichen.

Funktion

climbStairs(n: integer) → integer
ninteger
die Anzahl der Stufen in der Treppe
Gibt zurückinteger
die Anzahl der verschiedenen Folgen aus 1er- und 2er-Schritten, die Stufe n erreichen

Einschränkungen

  • 1 ≤ n ≤ 45
  • Die Antwort passt in eine vorzeichenbehaftete 32-Bit-Ganzzahl: n = 45 ergibt 1836311903.

Beispiele

Eingabe
n = 3
Ausgabe
3
Erklärung
Drei Stufen kann man als 1, 1, 1, als 1, 2 oder als 2, 1 erklimmen, also gibt es 3 Möglichkeiten.

lock icon+13 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Was ist, wenn einige Stufen beschädigt sind und du sie möglicherweise nie betreten kannst? Wie ändert sich die Rekursion, und wie lautet die Anzahl für eine beschädigte Stufe?

Code zurücksetzen
def climbStairs(n):
    # Schreibe hier deinen Code
Testfälle

Fall 1

Fall 2

Eingabe

n = 3

Erwartet

3