首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • [向net_lover提问]孟子及csdn高手们,一个算法问题请教思路,数学算法,可能有点难度
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangdetian168
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-20 14:17:56 楼主
    一个矩形1000*2000
    要取
    208*200    14张
    208*962      2张
    208*862      3张
    如何剪裁才能共需标准的矩形几个,如何剪裁才能更省标准版的材料呢

    这是其一,还有就是我的这些板类型不固定
    这个有可能是
    208*200    14张
    208*962      2张
    208*862      3张
    208*860      3张
    等等可能很多类型
    挠了一上午头,来这里透透气,大家给个思路
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • keyake863
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 14:26:451楼 得分:0
    更省标准版的材料,的标准是什么呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangdetian168
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 14:28:002楼 得分:0
    标准版的材料呢是1000*2000 矩形板
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangkun9999
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 14:42:493楼 得分:0
    貌似可以采用取大优先的原则(以宽为标准),宽度最大的先取.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangkun9999
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 14:44:484楼 得分:0
    说错了,应该是以高为标准,先从最高的板材取起,然后以次类推.(中间不够取的部分用判断就可以了)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yagebu1983
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 15:04:435楼 得分:0
    引用 4 楼 wangkun9999 的回复:
    说错了,应该是以高为标准,先从最高的板材取起,然后以次类推.(中间不够取的部分用判断就可以了)

    up!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jack20080808
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 15:18:566楼 得分:0
    长宽都建数组,索引对应,长或宽取大优先,再把多余从小到大循环,得出符合要求的最大值.只说说自己的一点想法,希望高手来赐教一下
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wdgphc
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 16:11:217楼 得分:0
    可以这么裁吗?

    -------------------------
    |          |            |
    |          |            |
    |      |---------------|
    |-------|              |
    |      |              |
    -------------------------

    还是必须象裁玻璃那样必须一刀从头到尾?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • suyiming
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 17:15:498楼 得分:0
    有个参照物 好办 ^_^
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • f800051235
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 09:29:559楼 得分:0
    up!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sunshine_anycall
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 10:26:2310楼 得分:0
    有时一个典型的装箱问题,
    找找这方面的算法看看吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sunshine_anycall
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 10:26:5711楼 得分:0
    你的这个是要找最优解,所以要用的是回溯法
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • pdsnet
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 10:35:4612楼 得分:0
    顶下...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yuchangmao
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 10:39:3813楼 得分:0
    一点点思路:不区分矩形的长和高,依次取你要切取的矩形的其中一条边的长度相加,如果计算出的结果越接近1000*2000 或者2000*1000,即为最佳方案。

    比如计算出的结果为:

    一条边:100  200  300 200 200
    另一条边200  400  600 300 500

    对应的四个矩形就是1(100,200)2(200,400)3(...)4(...)

    那么以任何一边做为高,另一边则是宽来切取
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • gimse7en
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 10:40:3414楼 得分:0
    mark
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangdetian168
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:00:0915楼 得分:0
    其实就是板材切割的最优算法问题
    大家多给些指点
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wuyi8808
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:01:0016楼 得分:0
    有个算法与数据结构版。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wuyi8808
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:01:4117楼 得分:0
    http://forum.csdn.net/SList/ST_Arithmetic/
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangdetian168
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 14:25:1018楼 得分:0
    世界性难题??
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • LQknife
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 15:23:4319楼 得分:0
    不出丑了 帮顶
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangdetian168
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 09:53:1420楼 得分:0
    csdn
    人呢
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangdetian168
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 09:54:1521楼 得分:0
    难道都只会增删改查
    那太没有编程的意思了吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • llxchen
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-27 16:33:1622楼 得分:0
    UP
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • happycharles
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-28 10:53:0123楼 得分:0
    通过回溯找最优解,数据结构中有很多类似的东东,最短路径,迷宫通路什么的,都可以参考一下
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kkxkj
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-28 10:57:2724楼 得分:0
    好难,不会
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sigridl
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-28 11:47:5125楼 得分:0
    是求使得浪费的材料最少的最优方案吗?
    一个矩形1000*2000
    要取
    208*200  ,  208*962    ,  208*862 
    首先看看下面这两个哪个值小,便取个开始割。
    1000-(208*x1+200*x2+962*x3+862*x3)=y1 (其中y1>=0)
    2000-(208*x1+200*x2+962*x3+862*x3)=y2 (其中y2>=0)

    如果y1 <y2,刚从边长为1000这条边开始,否则从2000那条边开始。
    按照求出的x1,x2,x3变量的值,进行切割。然后再按照割完后的边,求出以那边为一边。另一条边可变的最优个数。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ylqmd
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-28 12:09:4126楼 得分:0
    哈哈,开会了,搬个板凳慢慢看。mark
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sigridl
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-28 14:37:4027楼 得分:0
    引用 25 楼 sigridl 的回复:
    是求使得浪费的材料最少的最优方案吗?
    一个矩形1000*2000
    要取
    208*200  ,  208*962    ,  208*862 
    首先看看下面这两个哪个值小,便取个开始割。
    1000-(208*x1+200*x2+962*x3+862*x3)=y1 (其中y1>=0)
    2000-(208*x1+200*x2+962*x3+862*x3)=y2 (其中y2>=0)

    如果y1 <y2,刚从边长为1000这条边开始,否则从2000那条边开始。
    按照求出的x1,x2,x3变量的值,进行切割。然后再按照割完后的边,求出以那边为一边。另一…



    想想觉得应该两种都算下,然后进行对比,选出损失最小的。
    1000-(208*x1+200*x2+962*x3+862*x3)=y1 (其中y1>=0)  求出使得y2最小值时的x1,x2,x3
    2000-(208*x1+200*x2+962*x3+862*x3)=y2 (其中y2>=0)  求出使得y2最小值时的x1,x2,x3

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sxmonsy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-28 14:45:3728楼 得分:0
    头几天看到了一个取木材的.今天看到个裁纸的....应该差不多吧.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • fengboawhf
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-29 15:29:5529楼 得分:0
    ding
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sp1234
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-01 17:54:0330楼 得分:0
    凡是“最xxxxx”的这类问题,只有极少数可以使用贪心策略简单地找到结果,大多都是非人力所能想清楚的问题。我建议你,先尽量找最快、内存最大的计算机用傻瓜办法查找结果。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天