社区
数据结构与算法
帖子详情
把一些矩形拼成一个大矩形,要求留空最少
happycock
2007-08-14 08:31:27
把一些矩形拼成一个大矩形,矩形可以旋转,要求拼后的矩形面积最小,也就是留的空白最少。拼后的矩形没有尺寸限制,如果有多解,最好是长宽接近。
感觉上和下料问题有些区别,因为是尺寸不受限的,不知道这样是会增加复杂度,还是降低复杂度。
如果是限制一维的长或者宽呢,就是长或宽定长,令一维可以增长。
...全文
577
11
打赏
收藏
把一些矩形拼成一个大矩形,要求留空最少
把一些矩形拼成一个大矩形,矩形可以旋转,要求拼后的矩形面积最小,也就是留的空白最少。拼后的矩形没有尺寸限制,如果有多解,最好是长宽接近。 感觉上和下料问题有些区别,因为是尺寸不受限的,不知道这样是会增加复杂度,还是降低复杂度。 如果是限制一维的长或者宽呢,就是长或宽定长,令一维可以增长。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
happycock
2007-09-29
打赏
举报
回复
CSDN催着要结贴,什么事吗。
超级大笨狼
2007-09-27
打赏
举报
回复
自动排版打印的问题,我也需要这个,我有2万歌词,想打印,不过最后还是放弃了,因为至少需要3000张纸,那么多看起来也不方便.
happycock
2007-09-24
打赏
举报
回复
有个近似解就可以了,问题的规模不会太大,大概在N=30~50之间吧。留边可以在任意位置,不存在一刀切的要求。
kaishui_gu
2007-09-24
打赏
举报
回复
贪婪算法的策略很多,近似程度也不同,想到一个简单的:
1.对所有的矩形进行排序(按长度W),从大到小:A[N]
这样得到一个很粗糙的大矩形,面积为:A[1].W*(A[1].Height+...+A[N].Height)
2.用非常简单的方式来优化这个大矩形:
从最小的矩形开始(即A[N]),按循序填充到大矩形的空白位置(从A[2]开始)
举例来说:
a:W=20,H=10;b:W=10,H=9;c:W=5,H=4;d:W=4,H=4;
1.上面的矩形排好序,得到的矩形面积为:20*(10+9+4+4)=540
2.将d填充到b中(当然,如果添不下,就试试c,一直向下),由于b有10的空位,所以可以填充,填充之后的矩形面积为:20*(10+9+4)=460;
将c填充到b中,同样可以填充:这时的面积为:20*(10+9)=380;
这种算法比较粗糙,应该优化一下,LZ可以自己想想其他的
kaishui_gu
2007-09-01
打赏
举报
回复
太复杂,用贪婪算法算个近似解倒有可能,最优解太难了
flyingdog
2007-09-01
打赏
举报
回复
是np问题。但是有很多相关策略可以找到近试最优值。
你可以参看intel多核比赛复赛第二题。和这个要求差不多。
kaishui_gu
2007-08-27
打赏
举报
回复
不知道LZ所说的留空白是指在大矩形内部还是可以在边上留空白?
zzwu
2007-08-25
打赏
举报
回复
是一个难题
iatsbg
2007-08-25
打赏
举报
回复
(1)用回溯法解决“这些矩形能否放在一个m*n的大矩形里”的问题。
(2)用枚举法和(1)解决“这些矩形能否放在一个面积为S的大矩形里”的问题。
(3)用二分法和(2)解决“能容下这些矩形的大矩形面积最小为多少”的问题。
好复杂啊~
syy64
2007-08-14
打赏
举报
回复
面积最小的话,也就是说尽量拼成正方形。
happycock
2007-08-14
打赏
举报
回复
这个问题的极限解是有的,就是所有矩形的面积和。但显然这个极限解是一点空白都没有。
矩形
件排样优化的十字线法.pdf
矩形
件排样优化的十字线法.pdf
54图形的拼组1(1).ppt
54图形的拼组1(1).ppt
一年级数学下册第2单元认识图形二测试题无答案苏教版
一年级数学下册第2单元认识图形二测试题无答案苏教版
五年级数学下册 长方体和正方体切拼练习题(无答案) 新人教版 试题.doc
五年级数学下册 长方体和正方体切拼练习题(无答案) 新人教版 试题.doc
人教版四年级下数学易错题.doc
人教版四年级下数学易错题.doc
数据结构与算法
33,027
社区成员
35,335
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章