Задача 13: Минимальная стоимость подъема по лестнице

Напишите определение функции min_cost_climbing_stairs(cost: list[int]) -> int, которая принимает список целых чисел cost, где cost[i] — это стоимость i-й ступени на лестнице. Оплатив стоимость, вы можете подняться на одну или две ступени.

Вы можете начать либо со ступени с индексом 0, либо со ступени с индексом 1.

Функция должна вернуть минимальную стоимость подъема на вершину.


Формат ввода:

  • cost — список целых чисел, представляющий стоимость ступеней.

Формат вывода:

  • Целое число — минимальная стоимость подъема на вершину.

Примеры:

Пример 1:
Ввод: cost = [10, 15, 20]
Вывод: 15
Пояснение:
Вы начинаете со ступени с индексом 1:

  • Заплатите 15 и поднимитесь на две ступени, чтобы достичь вершины.
    Общая стоимость равна 15.

Пример 2:
Ввод: cost = [1, 100, 1, 1, 1, 100, 1, 1, 100, 1]
Вывод: 6
Пояснение:
Вы начинаете со ступени с индексом 0:

  • Заплатите 1 и поднимитесь на две ступени, чтобы достичь индекса 2.
  • Заплатите 1 и поднимитесь на две ступени, чтобы достичь индекса 4.
  • Заплатите 1 и поднимитесь на две ступени, чтобы достичь индекса 6.
  • Заплатите 1 и поднимитесь на одну ступень, чтобы достичь индекса 7.
  • Заплатите 1 и поднимитесь на две ступени, чтобы достичь индекса 9.
  • Заплатите 1 и поднимитесь на одну ступень, чтобы достичь вершины.
    Общая стоимость равна 6.

0

Вы должны Войти или Зарегистрироваться чтобы оставлять комментарии