我列出了可用水果数量和农民数量之间的排列。在排列中输入(1,2,…,最大水果数量)和农民数量(3)。这是我使用的代码:
action_list = list(permutations(no_fruits(list), no_farmers(just a number)))
想象有3个水果和3个农民。1号水果是苹果,2号是另一个苹果,3号是芒果。它是哪种水果的信息在对象1中。例如,水果=苹果。我已经有一个lis,它表示哪些数字有相同的水果。我们有以下6种组合: (1,2,3) (1,3,2) (2,1,3) (2,3,1) (3,1,2) (3,2,1)
但现在我不想区分苹果1和苹果2。因此,最终输出应为: (1,2,3) (1,3,2) (3,1,2)
如何删除其他组合?换句话说,我如何删除 只有1号和2号水果相互交换位置的组合
其他有关资料: 农民的数量可以超过可获得的水果的数量。在这种情况下,会有一些农民不会有水果,会被表示为“-”。以下是一个例子:
(1,2,-)
这意味着农民3没有水果,而农民1和2分别有水果1和2
我还没有完全掌握。然而,这里有一个更新的代码来处理水果和农场主之间的不匹配,但需要两个iterables:
相关问题 更多 >
编程相关推荐