row_totals[i] — сумма i-й строки, col_totals[j] — сумма j-го столбца. Сами числа потеряны.
Восстановите таблицу размера len(row_totals) × len(col_totals) с такими итогами. Подходящих таблиц обычно много, поэтому верните одну определённую: если прочитать клетки по строкам (первая строка слева направо, затем вторая и так далее), получится последовательность, которая лексикографически больше, чем у любой другой подходящей таблицы. Проще говоря, в каждую клетку по порядку ставится как можно большее число.
Суммы row_totals и col_totals совпадают, так что подходящая таблица всегда есть.row_totals=[5, 6], col_totals=[2, 9] → [[2, 3], [0, 6]]
В левый верхний угол ставим максимум — min(5, 2) = 2. Остаток первой строки 3 уходит вправо, вторая строка получает 0 и 6. Итог [[2, 3], [0, 6]].
row_totals=[4, 0, 3], col_totals=[3, 4] → [[3, 1], [0, 0], [0, 3]]
Нулевая строка целиком из нулей; получаем [[3, 1], [0, 0], [0, 3]].
row_totals=[7], col_totals=[1, 2, 4] → [[1, 2, 4]]
Строка одна, так что каждая её клетка равна сумме своего столбца.
row_totals=[5, 6], col_totals=[2, 9]
[[2, 3], [0, 6]]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 43 теста на сервере, включая скрытые.