День 5: Практический Smalltalk #2. Roassal

Posted on May 13, 2022

Содержание

  • Подготовка;
  • Trapping Rain Water: решение с визуализацией.

Подготовка

В новом (или старом) образе выполняем:

Metacello new
    baseline: 'StClassRusDay5';
    repository: 'github://dmatveev/stclass-day5';
    load.

Либо можно клонировать репозиторий явно через Iceberg или руками, как мы это делали в предыдущие дни. Форкать в этот раз не обязательно!

Trapping Rain Water: решение с визуализацией

Источник: Leetcode

Вам дан массив n целых положительных чисел, представляющий карту высот. Каждое значение соответствует высоте столбика “земли” шириной 1 в данной точке. Необходимо посчитать, сколько воды останется на такой поверхности после дождя.

Пример 1

Input: height = [0,1,0,2,1,0,1,3,2,1,2,1]
Output: 6

Пример 2

Input: height = [4,2,0,3,2,5]
Output: 9

(Обзор решения)

В середине процесса поиска решения
В середине процесса поиска решения

Примечание: на скриншоте выше код отображения уже был обновлён, в записи лекции этот шаг выглядит несколько иначе.

(Наглядная отладка)

Отладка решения с визуализацией
Отладка решения с визуализацией

Больше информации о Roassal можно найти здесь.

Вернуться к курсу