diff --git a/dynamic_programming/climbing_stairs.py b/dynamic_programming/climbing_stairs.py index 38bdb427eedc..e69de29bb2d1 100644 --- a/dynamic_programming/climbing_stairs.py +++ b/dynamic_programming/climbing_stairs.py @@ -1,42 +0,0 @@ -#!/usr/bin/env python3 - - -def climb_stairs(number_of_steps: int) -> int: - """ - LeetCdoe No.70: Climbing Stairs - Distinct ways to climb a number_of_steps staircase where each time you can either - climb 1 or 2 steps. - - Args: - number_of_steps: number of steps on the staircase - - Returns: - Distinct ways to climb a number_of_steps staircase - - Raises: - AssertionError: number_of_steps not positive integer - - >>> climb_stairs(3) - 3 - >>> climb_stairs(1) - 1 - >>> climb_stairs(-7) # doctest: +ELLIPSIS - Traceback (most recent call last): - ... - AssertionError: number_of_steps needs to be positive integer, your input -7 - """ - assert isinstance(number_of_steps, int) and number_of_steps > 0, ( - f"number_of_steps needs to be positive integer, your input {number_of_steps}" - ) - if number_of_steps == 1: - return 1 - previous, current = 1, 1 - for _ in range(number_of_steps - 1): - current, previous = current + previous, current - return current - - -if __name__ == "__main__": - import doctest - - doctest.testmod()