我想创建一个随机n x n矩阵,其中十进制数作为元素。每个元素必须大于零,每行/每列应加起来一个。除了上述两个限制外,这些要素应该是随机的。
到目前为止,我使用random.random()
有很多嵌套for循环,但代码非常混乱。有更简单的方法吗?感谢。
答案 0 :(得分:1)
如果允许所有元素都相同,这很容易。假设它们必须是截然不同的,那么你将有magic square
的变体根据n
是奇数还是偶数,有不同的算法可以制作魔方。
一旦你有一个幻方,每一行和每一行将总和为一个常数N
将方格中的所有数字除以N