试图找到一个用于将矩形镶嵌到板上的公式,其中不能使用中间正方形

时间:2010-03-20 01:42:13

标签: spatial tesselation

我正在研究空间堆叠问题......目前我正试图在2D中进行解决,但最终还是要在3D中进行这项工作。

我将空间划分为中心区域周围的nxn方块,因此n总是奇数...而我正在尝试找到任何维度小于nxn的矩形的位置数(例如1x1,1x2,2x2等等)可以放置,中间的广场不可用。

到目前为止,我已经有了这个......

total number of rectangles = ((n^2 + n)^2 ) / 4

..也是总平方数=(n(n + 1)(2n + 1))/ 6

然而,我不得不制定一个公式来找出那些位置是不可能的,因为中间方格将被占用。

例如:

[] [] []

[] [x] []

[] [] []

3 x 3板...有8个可能的位置用于存储中间正方形的东西正在使用中。 我可以使用1x1形状,1x2形状,2x1,3x1等......

公式给出了矩形的数量:(9 + 3)^ 2/4 = 144/4 = 36个堆叠位置 然而,由于中间广场无法占领,所以这些都无法实现。

我可以看到这些是不可能的选择:

1x1形状= 1不可能(中方) 2x1形状= 4个不可能(任何使用中间方块的东西) 3x1 = 2不可能 2x2 = 4不可能 等等 总不可能的组合= 16

因此,我所追求的解决方案是在3x3电路板上36-16 = 20个可能的矩形堆叠位置。

我已经用C#对它进行了编码,通过反复试验来解决这个问题,但是我真的想要一个公式,因为我想解决大量的n值,并最终制作这个3D。

有人能指出这些空间/曲面细分问题的公式吗? 关于如何将整个矩形公式变成3D的任何想法都非常受欢迎!

谢谢!

1 个答案:

答案 0 :(得分:0)

好的..所以我现在得到一个答案是......总不可能的案例定义如下:

n ^ 4其中n是仅使用奇数网格的网格大小的顺序

2 ^ 4 = 16(网格是3乘3) 3 ^ 4 = 81(网格是5乘5) 4 ^ 4 = 256(网格是7乘7) 等