从主要小矩形的大完美矩形

时间:2017-12-04 15:51:25

标签: python algorithm excel-vba vba excel

我想安排矩形,它将形成一个没有空格的大型完美矩形 - 大矩形尺寸已知。

我更喜欢在Excel中使用它,但即使python也是一个很好的解决方案。 - 对于开始算法的想法也是受欢迎的。

  1. 每个矩形的大小长度和宽度(不允许翻转)和Y级别。
  2. 我肯定知道有一个解决方案,我确切知道大矩形大小。
  3. 如果我将大矩形放在轴上,Y轴将有很少(3-10)个等级,例如点(0,100)(0,250)(0,1000)。
  4. 每个小矩形的底部应从预定义的水平开始(Y轴) 所以实际上对于每个级别我都有特定的矩形,我需要决定顺序。
  5. 我的输入如下:

    • REC。编号
    • 宽度
    • 海特
    • 起始等级(Y轴)

    如果大矩形左下角点位于(0,0)轴上,则预期输出:

    • 记录。否。
    • 左下角的地方。应该开始

    任何想法?我知道这是一个很难的问题,但我的矩形数量很少..

    谢谢

1 个答案:

答案 0 :(得分:0)

你可以在numpy中首先初始化一个空网格然后单独访问不同的条目

grid=np.zeros(1000,1000)
for in range(phases)
grid[startx[i]:startx[i]+with,starty[i]:starty[i]+Hight[i]==rec_number[i]

startx是包含x方向起点的数组 另一个只是按照你输入的相同原则