Ответ, который я нашел, был жадным подходом, в котором отвечал на каждую подзадачу.Поэтому я иду столбец за столбцом и заполняю каждый столбец в зависимости от веса строки.
Помните, что индексирование начинается с 0
Я начинаю со столбца 0
, поскольку строка 3 имеет наибольшее значение (3), который я заполняюэто
0 0 0 0
0 0 0 0
0 0 0 0
1 0 0 0
теперь массив строк и столбцов выглядит следующим образом
row = {2,2,2,2}
column = {2,2,1,3}
Я продолжаю заполнять, пока не могу больше вставить больше, т.е. столбец [0] = 0
1 0 0 0
0 0 0 0
0 0 0 0
1 0 0 0
row = {1,2,2,2}
column={2,2,1,2}
1 0 0 0
1 0 0 0
0 0 0 0
1 0 0 0
row = {1,1,2,2}
column={2,1,1,2}
теперь, так как в столбце [0] == 0 я могу перейти к следующему столбцу и снова выполнить ту же процедуру