标签: java algorithm greedy
在我的磁贴编辑器中,用户可以绘制包含1x1正方形的50x50网格。但是,我需要一个快速的算法来获取这样一个网格并导出具有相同类型的多边形组的矩形/正方形列表(并且之间没有用墙隔开)。
在下图中,您可以看到从这样的网格中剪切:
我想要的是输出1x3蓝色矩形,1x3白色矩形,3x2平方矩形,4x2蓝色矩形,3x3白色矩形,4x2黑色矩形,1x3黑色矩形以及9x2和2x2黄色矩形或7x2和2x4黄色矩形
做这样的事情的最快算法是什么?