← К треку Массивы: 0/107 решено

5212. Игра в прыжки II

Medium 2 решили
Вы стоите на первой клетке массива nums (индекс 0) и хотите попасть на последнюю за минимальное число прыжков.

Число nums[i] — это не обязательный прыжок, а максимум: с клетки i можно прыгнуть вправо на 1, 2, … или nums[i] шагов (не левее и не за конец массива). Если nums[i] = 0, с этой клетки прыгать нельзя.

В этой задаче гарантируется, что до последней клетки всегда можно добраться. Верните минимальное число прыжков. Если в массиве одна клетка — вы уже на месте, ответ 0.

Как читать пример [2, 3, 1, 1, 4]:
индекс  0  1  2  3  4
nums    2  3  1  1  4

с 0 можно на 1 или 2
оптимум: 0 → 1 → 4  (два прыжка)

Примеры:

Вход: [2, 3, 1, 1, 4]
Выход: 2
Объяснение: С клетки 0 (макс. 2) можно на 1 или 2. Оптимально прыгнуть на 1, а оттуда сразу на конец 4. Всего 2 прыжка (путь 0→2→3→4 тоже возможен, но длиннее).
Вход: [2, 3, 0, 1, 4]
Выход: 2
Объяснение: С нуля прыгаем на 1 (дальше нуля на индексе 2 всё равно не уйти в один прыжок до конца). С клетки 1 (макс. 3) сразу на 4. Итого 2 прыжка: 0→1→4.
Вход: [1]
Выход: 0
Объяснение: Одна клетка: вы уже на последней → 0 прыжков.

Ограничения:

1 <= nums.length <= 10^4 0 <= nums[i] <= 1000 Последний индекс всегда достижим

Теги:

Массивы Жадные алгоритмы

Комментарии (0)

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

Пока нет комментариев. Будьте первым!