给出一个数字列表,例如[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的几种尺寸规格的效率非常低。