rows + 2 горизонтальных и cols + 2 вертикальных, они делят её на клетки 1 × 1. Горизонтальные прутья пронумерованы сверху вниз числами от 1 до rows + 2, вертикальные — слева направо от 1 до cols + 2.
Некоторые прутья можно вынуть: горизонтальные с номерами из loose_rows и вертикальные с номерами из loose_cols. Остальные закреплены намертво.
Выньте любые из съёмных прутьев (можно ни одного) так, чтобы в решётке образовалось сквозное окно в форме квадрата, и верните наибольшую возможную площадь такого окна.rows=4, cols=3, loose_rows=[2, 3, 4], loose_cols=[3, 4] → 9
Убрав горизонтальные прутья 2–4, получаем просвет высотой 4; убрав вертикальные 3 и 4 — шириной 3. Квадрат ограничен меньшей стороной: 3 × 3 = 9.
rows=5, cols=5, loose_rows=[2, 4, 6], loose_cols=[2, 3] → 4
Среди горизонтальных съёмных прутьев нет двух соседних, поэтому по высоте больше 2 клеток не открыть. Ответ 2 × 2 = 4.
rows, cols ≤ 10⁹len(loose_rows), len(loose_cols) ≤ 10⁴loose_rows[i] ≤ rows + 1loose_cols[i] ≤ cols + 1rows=4, cols=3, loose_rows=[2, 3, 4], loose_cols=[3, 4]
9
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 93 теста на сервере, включая скрытые.