【发布时间】:2018-10-24 21:17:50
【问题描述】:
我正在尝试找出最优化的代码,该代码将找到 X 和 Y 之间给定列表的组合列表,如下所示:
- A = 4
- B = 6
- C = 3
- D = 5
- E = 4
- F = 1
假设 X = 7,Y = 16
So 查找总和大于或等于 X 且小于或等于 Y 的所有组合。这些值可以重复。
即:
- AA
- AAA
- AAAA
- ABA
- ABB
- ABC
- ...
- EE
- EEE
- EEEE
- EA
- EAA
...等等
最终条件:不应包含重复的安排。例如,ABB 与 BBA 和 BAB 相同。所以后两者不应该包括在内。
我正在尝试为此找到最优化的代码,因为输入列表最多可以包含 200 个数字...
【问题讨论】:
-
什么?你问的是数字还是字母?我看不出这个问题的顶部和底部有什么关系。
-
@Andreas,A = 4,因此 A+A = 8,介于 X = 7 和 Y = 16 之间,因此包含在内,AAA 也是如此,因为 3xA = 12 其中 A = 4
-
到目前为止你尝试过什么?你的方法看起来如何?
-
我看到您最近访问过该网站。您有什么尝试与我们分享的吗?
标签: php combinatorics