gpt4 book ai didi

algorithm - 获取元素的所有组合和元素可以在单个组合中重复多次

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:44:04 25 4
gpt4 key购买 nike

我在获取元素的所有组合时遇到问题,元素可以重复和重复使用多次,即使是在单个组合中也是如此。
例如,我有一个 100 cm2 的盒子,那么我有以下对象:
1)物体A:20cm2
2) 物体B:50cm2

预期的组合将是:(A), (A, A), (A, A, A), (A, A, A, A), (A, A, A, A, A), ( A, B), (A, B, A), (A, B, A, A) .....

任何组合都是允许的,只要它们能装进盒子里。对象可以在单个组合中重复多次。但是,不需要重复的模式,例如(A, B) 等于 (B, A)。

我不确定搜索此问题的关键字是什么,如果这是一个重复的问题,请告诉我。

最佳答案

在我看来,递归算法可以完成这项工作:适合第一个对象,然后将下一个对象(包括您刚刚包含的对象)的所有组合添加到尺寸减小的框中。

然后对第二个对象执行相同的操作,始终使用与行中下一个对象的组合,而不是之前的对象(不能在 B 之后有 A)。

以您的示例,您将拥有:

  • (一)
    • (A,A)
      • (A,A,A)
        • (A,A,A,A)
          • (A,A,A,A,A)
          • (A,A,A,A,B) 不工作
        • (A,A,A,B) 不工作
      • (A,A,B)
    • (A,B)
      • (A,B,B) 不工作
  • (乙)
  • (乙,乙)

关于algorithm - 获取元素的所有组合和元素可以在单个组合中重复多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34181582/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com