【发布时间】:2012-01-26 00:54:09
【问题描述】:
输入:总成本。
输出:提供所需成本的所有级别组合。
每个堆栈的每一级花费不同的金额(堆栈 1 中的级别 1 与堆栈 2 中的级别 1 不同)。我有一个函数可以根据我手动输入的基本成本(级别 1)(硬编码)将级别转换为实际成本。
我需要找到能够为我提供输入成本的级别组合。我意识到有不止一种可能的解决方案,但我只需要一种方法来迭代每一种可能性。
这是我需要的:
input = 224,这是一个的解决方案:
我正在制作一个简单的程序,需要选择不同堆栈的级别然后计算成本,并且我需要知道存在的所有可能成本......每个堆栈的每个级别花费不同的金额,但是这不是问题,问题是如何为每个堆栈选择一个级别。
我可能解释得很含糊,所以这里有一张图片(你不得不原谅我的绘画技巧不佳):
所以,所有的堆栈都有 0 级,而 0 级总是花费 0 钱。
其他信息:
- 我有一个名为“maxLevels”的数组,该数组的长度是堆栈数,每个元素是该堆栈中最高级别的编号(例如,maxLevels[0] == 2)。李>
- 您可以从 1 级开始迭代,因为 0 级根本不重要。
- 应将所选级别保存在与 maxLevels(相同长度)类似的数组(名称:“currentLevels”)中,但它不包含堆栈的最大级别,而是包含堆栈的所选级别(例如: currentLevels[3] == 2)。
- 我正在使用 C++ 编程,但伪代码也可以。
- 这不是家庭作业,我是为了好玩(基本上是为了游戏)。
【问题讨论】:
-
我已经重读了几次这个问题,但我很难理解它。您能否提供一个具体示例,显示输入、输出以及计算输出所采取的步骤?
-
我不相信你会从中得到任何东西......只有输入是成本,每个堆栈的每个级别加起来一点,所以程序的任务是找到确切的不同级别的组合,因此它与成本相匹配。我马上回来,我会编辑问题!
-
( currentLevels[0] + currentLevels[1] + currentLevels[2] + ... ) == requested_cost这是你想要达到的目标吗?或者5级的成本可以和5级不同吗? -
我无法理解这一点,所以我倾向于投票结束,因为这不是一个真正的问题。但是,也许其他人会给出答案。看在上帝的份上,您能告诉我们问题是什么吗?
-
@bane 考虑到堆栈的当前配置和每个堆栈中每个项目的成本,您是否要求生成所有可能成本的算法?或者您是否要求给定一个成本值和给定堆栈配置的算法,并且每个项目的成本将产生生成给定成本值的堆栈选择?
标签: c++ arrays algorithm stack