一个大矩形中最多可以排列多少个小矩形?

lixue820922 2010-09-13 09:41:46
项目中遇到的问题,就是物流仓储的流程中,将箱摆放到托盘上,计算一个托盘可以摆放多少个箱。
托盘是一个矩形,箱也是矩形,且同样大小,箱必须正面朝上,不能叠放,所以只是一个二维问题。
问题转化为:在一个大的矩形中可以排列多少个形状相同的小矩形,如何摆放,使面积可以得到最大的利用率。

不用给出程序,只要说明一下思路即可,谢谢大家~
...全文
1115 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
air_snake 2010-09-16
  • 打赏
  • 举报
回复
给你给个方向吧,这个类型的题目是AI中经常讨论的,计算的时间复杂度一般都比较高,属于优化的问题,还是不要寻求deterministic的解了。
常用的优化编程的语言可以用eclipse,prolog不是那个开发平台那个eclipse,写法上好像有点区别。
还有些专门做优化的语言,忘了,可以直接定义限制条件,然后会给你个结果。
亚昆 2010-09-15
  • 打赏
  • 举报
回复
无数个矩形
积木 2010-09-15
  • 打赏
  • 举报
回复 1
这东西你要是会了,数学系的优化老师基本上都下岗了。呵呵。
HimeTale 2010-09-15
  • 打赏
  • 举报
回复
据说是NPC
showjim 2010-09-13
  • 打赏
  • 举报
回复
粗略的想了一下,把大矩形分成(左上部,右上部,左下部,右下部)4个部分应该比较合理。左上部与右下部同态,右上部与左下部同态(同时都放横的或都放竖的),想像一下可以使这四个部分都贴着四个角,空隙在中间。
假设大矩形与小矩形的长宽分别为BW,BH,SW,SH,基于这样的算法,时间复杂度大概为(BW/min(SW,SH))*(BH/min(SW,SH)),注意对于中间可能交错的部分应该分析每一种相近的状态(一共4种状态)。
小楫轻舟 2010-09-13
  • 打赏
  • 举报
回复
设大矩形长宽为A,B;小矩形长宽为a,b
设法求B -( m * a + n * b) 最小,也就是m行竖着放,n行横着放使空余的长边方向的空间更小
....
貌似很难找最优解

33,027

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧