pixels размером m × n: pixels[i][j] — яркость пикселя от 0 до 255. Также дано число tolerance.
**Плитка** — любой квадрат 3 × 3 внутри картинки. Плитка **ровная**, если у любых двух пикселей внутри неё, соседних по стороне, яркость отличается не больше чем на tolerance. Среднее ровной плитки — сумма её девяти пикселей, делённая на 9 с округлением вниз.
Постройте новую матрицу того же размера:
- если пиксель не входит ни в одну ровную плитку, он остаётся прежним;
- иначе его новое значение — среднее арифметическое средних всех ровных плиток, в которые он входит, с округлением вниз. Средние плиток берутся уже округлёнными.
Плитки могут перекрываться, и один пиксель может входить в несколько из них.pixels=[[10, 12, 11, 40], [11, 13, 12, 41], [12, 14, 13, 42]], tolerance=2 → [[12, 12, 12, 40], [12, 12, 12, 41], [12, 12, 12, 42]]
Левая плитка 3 × 3 гладкая: соседние пиксели отличаются не больше чем на 2, её среднее 108 // 9 = 12. В правой плитке есть скачок 11 → 40, она не годится. Столбец 3 не покрыт ни одной гладкой плиткой и остаётся как был.
pixels=[[0, 0, 0], [0, 9, 0], [0, 0, 0]], tolerance=8 → [[0, 0, 0], [0, 9, 0], [0, 0, 0]]
Единственная плитка не гладкая (9 отличается от соседей на 9 > 8), поэтому картинка не меняется.
pixels=[[1, 2, 3, 4], [1, 2, 3, 4], [1, 2, 3, 4]], tolerance=1 → [[2, 2, 2, 3], [2, 2, 2, 3], [2, 2, 2, 3]]
Обе плитки гладкие, их средние 2 и 3. Средние столбцы покрыты обеими: (2 + 3) // 2 = 2.
pixels=[[10, 12, 11, 40], [11, 13, 12, 41], [12, 14, 13, 42]], tolerance=2
[[12, 12, 12, 40], [12, 12, 12, 41], [12, 12, 12, 42]]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 93 теста на сервере, включая скрытые.