我们从下面这个问题来了解这两个函数。
问题
现有两个 1Kg 的快件,一个 2Kg 的快件,三个 3Kg 的快件,三个 4Kg 的快件和一个 5Kg 的快件,用两个承受 15Kg 的布袋装完所有快件有多少种可能?
用到的函数
DeleteDuplicates:删除重复的元素
Subsets:获得子集
Tuples:获得所有的组合
关于Subsets,Tuples这两个函数我们可以看一下下面这张图片,来看一下两者的区别

解答
首先我们先计算出每个袋子中应该如何装快件,使得正好放满 15Kg。
weight = {1, 1, 2, 3, 3, 3, 4, 4, 4, 5};
way = Select[DeleteDuplicates[Subsets[weight]], Total

本文通过一个实际问题——如何用两个15Kg布袋装满不同重量的快件,介绍Mathematica的子集和组合函数。讨论了DeleteDuplicates、Subsets和Combinations的区别,并给出了完整的解答过程。
最低0.47元/天 解锁文章
709

被折叠的 条评论
为什么被折叠?



