Наиболее эффективный в вычислительном отношении алгоритм для создания квадратных подматриц из 1 по диагонали большой матрицы с учетом спецификации размера подматриц - PullRequest
0 голосов
/ 23 октября 2019

Учитывая список чисел, например [2, 4, 1, 3], создайте квадратную матрицу размерности sum (list) x sum (list), где вдоль диагоналей имеются квадратные матрицы указанных размеровпо списку. В случае [2, 4, 1, 3] это приведет к

1 1 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0
0 0 1 1 1 1 0 0 0 0
0 0 1 1 1 1 0 0 0 0
0 0 1 1 1 1 0 0 0 0
0 0 1 1 1 1 0 0 0 0
0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 1 1 1
0 0 0 0 0 0 0 1 1 1
0 0 0 0 0 0 0 1 1 1

Метод должен обобщать любые (положительные) значения в списке и любую длину списка.

То, что я до сих пор придумал:

Метод грубой силы: создайте каждую подматрицу индивидуально, а затем объедините их все. Это становится очень неэффективным, поскольку некоторые из спецификаций размера имеют размер 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...