设某一机器由n个部件组成,每一个部件都可以从m个不同的供应商处购得。设wij是从供应商j处购得的部件i的重量,cij 是相应的价格。试设计一个算法,给出总价格不超过c的最小重量机器设计。
算法设计:对于给定的机器部件重量和机器部件价格,计算总价格不超过d的最小重量机器设计。
数据输入:有文件input.txt给出输入数据。第1行有3个正整数n,m和d。接下来的2n行,每行n个数。前n行是c,后n行是w。
/*
* 本代码运用优先队列式分支限界法解决了最小重量机器设计问题。
* 算法思路:对于在某一个供应商是否购买某一零件,可以将这个过程抽象化为子集树模型。
* 该树的第i层则代表第i个零件的购买情况,每个商家j对应一棵子树。从根节点开始,对于当前讨论的
* 节点我们将之当作扩展节点,遍历该扩展节点的所有子节点,将其中符合条件的子节点全部插入优先
* 队列中(判断条件运用剪枝函数,下面讨论)。当遍历