Task 79_1. Гистограмма

Task 79_1. Гистограмма

UniLecs

Задача: дана гистограмма, она представлена числовым массивом:

[2, 1, 4, 5, 1, 3, 3]

Массив задает высоты прямоугольников, из ктр сформирована гистограмма, ширина этих прямоугольников равна 1 единице.

Необходимо определить площадь самого большого прямоугольника в гистограмме, этот прямоугольник должен быть на общей базовой линии.

Входные данные: arr - массив, ктр задает высоты прямоугольников гистограммы слева направо.

Вывод: S - площадь самого большого прямоугольника в гистограмме, этот прямоугольник должен быть на общей базовой линии.

Пример:

arr = [2, 1, 4, 5, 1, 3, 3]

Smax = 8

Реализация:

  1. @LostInKadath, Python
@LostInKadath, Python

2. Антон, Rust

Антон, Rust

https://gist.github.com/AnthonyMikh/b5d43f3f498c68b4803a7c92bb644cc6

Тест:

https://play.rust-lang.org/?gist=9bb75e2782d55863b6ebad16950de35c&version=nightly


3. @mikhail_01, Python

@mikhail_01, Python

https://gist.github.com/unilecs/e659435c67f22860b38a906fbcd59e05


4. @tvolf, PHP

@tvolf, PHP

https://gist.github.com/tvolf/741f43cd3e66d350210d17cd368cf99f


5. @Kostigan, Python

@Kostigan, Python

https://gist.github.com/unilecs/691ac2098ca94bbd287706c6cf53ccaa


6. @mrmeison, JS. Решение с помощью стека, самое эффективное решение данной задачи.

@mrmeison, JS

https://jsfiddle.net/jwtnuy1u/

Report Page