【发布时间】:2013-08-07 16:20:35
【问题描述】:
假设我有这个下表:
VAR ITER_1 ITER_2 ITER_3 ITER_4
VAR1 6 8 5 7
VAR2 5 1 7 8
VAR3 3 8 8 4
VAR4 8 7 2 5
VAR5 8 7 9 2
VAR6 8 7 3 6
VAR7 4 7 4 5
我想为每一行选择列组合,以便组合等于特定总和。例如。在这种情况下,假设我希望 ITER 的每个 VAR 组合为 15。在这种情况下,我想选择 VAR1、ITER_2 和 ITER_4。对于VAR2、ITER_3 和ITER_4。
我想开发一个代码,这样代码可以告诉我为每个 VAR 选择哪些列值。
有人可以建议一些方法吗?不需要编写代码,但我可以使用的逻辑。
谢谢。
【问题讨论】:
-
如果无法获得所需的总和,应该怎么办?对于 VAR1,16 是不可行的。如果多个 ITER 具有相同的值(例如 VAR7 的 ITER_1 和 ITER_3),应该采用哪个 ITER?
-
当我被困在试图找出问题的逻辑时,我会用铅笔和纸坐下来尝试一些示例,并在处理示例时观察我遵循的步骤。这些步骤通常会导致对解决问题所必需的逻辑的想法。也许这种方法对你有用。
-
@Alex:感谢您的评论。如果多个 Iter 具有相同的值,则代码将突出显示所有它们。例如。如果 VAR1 有 2 个组合具有 1 个公共迭代(比如 ITER_3),那么它将突出显示 3 个迭代。但这种可能性微乎其微。此外,如果我们可以设置一个范围,那么总和是可能的。但是这些 r 位的复杂性。如果我能解决简单的问题,那么我们以后可以添加更多的复杂性。
-
感谢 GreatBigBore!我试试看。
标签: r