""" File: climbing_stairs_dfs.py Created Time: 2023-06-30 Author: krahets (krahets@163.com) """ def dfs(i: int) -> int: """検索""" # dp[1] と dp[2] は既知なので返す if i == 1 or i == 2: return i # dp[i] = dp[i-1] + dp[i-2] count = dfs(i - 1) + dfs(i - 2) return count def climbing_stairs_dfs(n: int) -> int: """階段登り:探索""" return dfs(n) """Driver Code""" if __name__ == "__main__": n = 9 res = climbing_stairs_dfs(n) print(f"{n} 段の階段を上る方法は全部で {res} 通りです")