Найти тему
Николай Сталин

C. Карандашный рисунок. Yandex Cup 2020: Фронтенд — Квалификация

Знаменитый марсианский художник Каран Д’Аш известен тем, что пишет картины в забытой технике карандашного рисунка. Чтобы приносить больше радости почитателям его творчества, Д’Аш написал программу, которая к любому изображению применяет эту технику. К сожалению, программы Каран Д’Аш пишет хуже, чем картины, поэтому работает фильтр слишком медленно.

Помогите художнику быстрее дарить радость ценителям его работ.У вас есть исходный код функции, которая принимает на вход два аргумента:

data UInt8ClampedArray с битмапом кадра (каждые 4 байта - один пиксель в формате rgba),
api — специальный API с методом ‘getDimensions‘, который возвращает объект с размерами кадра.

Функция возвращает Promise с массивом типа UInt8ClampedArray пикселей обработанной картины.

Нужно ускорить эту функцию, не изменяя её сигнатуру и не сломав возвращаемый ею результат.

Примечания

Если решение слишком медленное, то результатом теста будет TL (Time Limit) или неполный балл за тест. В архиве по ссылке «скачать условие задачи» вы найдёте исходный код функции и страницу, которую можно использовать для отладки.

Скачать условие задачи