易截截图软件、单文件、免安装、纯绿色、仅160KB

[求钢材切割问题的C/C++算法实现]

问题:工地上需要长度为A1的钢筋X根,长度为A2的钢筋Y根,长度为A3的钢筋Z根......以次类推.
其中A1,A2,A3,...长度任意指定,X,Y,Z,...数量也任意指定.

但仓库中的钢筋为标准长度,只有9米和15米两种长度,数量不限
问:怎么截断能是产生的废料长度最短?


请各位大虾帮忙解答下.


补充下:A1-An的长度均>0 <9

切割算法
1 仅由当前的长度加起来小于等于9或15个方式,满足剩余的长度小于当前使用的长度的最小值。
2 按照1中方式次序的方式枚举,每种方式使用数从小到大枚举,同时注意各种材料数量枚举到该材料需求数。
3 每获得一个解记录下当前最优值,当2过程中时可以剪枝。

一点思路,不实现了,应该会非常慢

搜索加剪枝吧,网上搜“sticks 算法”看看

这个不就是装箱问题吗?


相关问答:

C 程序问题 (二) - C/C++ / C语言

问一下:
#include <stdio.h>
int main()
{
  char x, y, z;
  int i;
  int a[16];
  for(i=0; i<=16; i++)
  {
  a[i] = 0;
  ......

使用C的高手请进

大家好!我是一位C爱好者,向大家请教下,C程序员可好找工作?公司用C干些什么?
无所谓好不好找工作,一般通信、系统、嵌入式、硬件方面用的多,而且由于C的底层特性,学会后在学其他的会比较容易

不管用什么语 ......

c中的转义字符问题

    '\108'作为字符常量对不对?
转义字符'\ddd'表示3位8进制所代表的字符。 但是108不是正确的8进制表示方法,因此应该是错误的。
但是char a='\108'; 为什么编译不出错呢?
\108 没超过 ......

C/S程序在线自动更新问题,谢谢求教!

目前遇到的问题是:
存放在远程服务器端c/s程序一有更新,如何做到客户端立即响应弹出有最新升级的提示窗口。
本来有点思路:采用WCF+windowns服务+定时器的方式也能实现,但是每台客户端机子每隔都去访问一下远程 ......

探求出c++、c的知识

      现在有关c++、c的书籍,那些书是较深层次的?请介绍几本?


#include <iostream>
using namespace std;
int funhion(int x, int y )
{
int m,n;
    ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号