DEV//UNIT

Лестница (шаг 1 или 2)

Сколькими способами подняться по лестнице — это Фибоначчи в костюме задачи.

время O(n)память O(n)уровень: начальный
Что происходит сейчас0/0
Нажмите Play, чтобы запустить сценарий
TypeScript — активная строка подсвечена шагом
1function climbStairs(n: number): number {
2 const ways = [1, 1]
3 for (let i = 2; i <= n; i++) {
4 ways[i] = ways[i - 1] + ways[i - 2]
5 }
6 return ways[n]
7}

Проблема

Сколькими способами подняться по лестнице — это Фибоначчи в костюме задачи.

Что вы видите

Ступеньки с накопленными способами: каждая цифра — сумма двух предыдущих.

Как это работает

На ступень i приходят только с i−1 и с i−2: ways[i] = ways[i−1] + ways[i−2]. Лестница превращает абстрактную рекурсию в осязаемую динамику — идеальная первая DP-задача.

Пошаговый разбор

  1. 01

    База

    Земля и первая ступень.

  2. 02

    Шаг

    Сумма двух предыдущих.

  3. 03

    Ответ

    Вершина лестницы.

Complexity и ограничения

time
O(n)
space
O(n)

Сложность см. в шапке страницы.

Edge cases

  • Пустой вход

    Корректная тривиальная обработка.

  • Вырожденный случай

    Минимум работы — сразу ответ.

Где встречается в реальности

Собеседования

Канонический вводный вопрос по динамике.

Автоматы

Счёт путей в конечных автоматах.

Планирование

Разбиение сроков на шаги.

Связанные алгоритмы

Shorts

«Лестница, которая на самом деле Фибоначчи»

Тот же сценарий StepSequence в вертикальной композиции — с safe zones и записью WebM ниже на странице.

Shorts 9:16

Вертикальная композиция строится той же последовательностью шагов, что и страница: safe zones отмечены пунктиром (там живёт UI платформ), биты сценария подсвечиваются по прогрессу. Кнопка записи сохраняет WebM — детерминированная StepSequence даёт воспроизводимый ролик без монтажа.

Лестница, которая на самом деле Фибоначчи
Нажмите Play
Бит 1/6 · 0–2 с
Hook
script-setup.ru/algorithms/climbing-stairs