内容提示:装箱问题 某厂生产一种弹子锁具, 每个锁具的钥匙有 5 个槽, 每个槽的高度从{1, 2, 3, 4, 5,6} 6 个数(单位略) 中任取一个, 由于工艺及其他原因, 制造锁具时对 5 个槽的高度有两个限定: 至少有 3 个不同的数; 相邻两槽的高度之差不能为 5。 满足以上条件制造出来的所有互不相同的锁具称为一批。 从顾客的利益出发, 自然希望在每批锁具中“一把钥匙开一把锁” 。 但是在当前工艺条件下, 对于同一批中两个锁是否能够互开, 有一下实验结果: 若二者相对应的 5 个槽的高度中有 4 个相同, 另一个槽的高度差为 1, 则可能互开; 在其他情形下, 不可能互开。 原来, 销售部门...
装箱问题 某厂生产一种弹子锁具, 每个锁具的钥匙有 5 个槽, 每个槽的高度从{1, 2, 3, 4, 5,6} 6 个数(单位略) 中任取一个, 由于工艺及其他原因, 制造锁具时对 5 个槽的高度有两个限定: 至少有 3 个不同的数; 相邻两槽的高度之差不能为 5。 满足以上条件制造出来的所有互不相同的锁具称为一批。 从顾客的利益出发, 自然希望在每批锁具中“一把钥匙开一把锁” 。 但是在当前工艺条件下, 对于同一批中两个锁是否能够互开, 有一下实验结果: 若二者相对应的 5 个槽的高度中有 4 个相同, 另一个槽的高度差为 1, 则可能互开; 在其他情形下, 不可能互开。 原来, 销售部门在一批锁具中随意地取 60 个装成一箱出售。 团体顾客往往购买几箱到几十箱, 他们抱怨购买的锁具会出现互开的情形。 现聘你为顾问, 回答并解决以下问题: ①每一批锁具有多少个? 装多少箱? ②为销售部门提出一种方案, 包括如何装箱(仍是 60 个锁具一箱) 璧山集装箱问答, 如何给箱子以标志, 出售时如何利用这些标志, 使团体顾客不再或减少抱怨。 ③采取你提出的方案, 团体顾客的购买量不超过多少箱, 就可以保证一定不会出现互开的情形。 ④按照原来的装箱方法, 如何定量地衡量团体顾客抱怨互开的程度(试对购买一、 二箱着给出具体结果) 。 解: 一、 每批锁的把数 问完全是一个数学问题, 首先可以求出有 5 个槽、 每个槽有 6 个高度的所有可能的个数为 n1=65=7776, 为了 满足题目中提出的至少有三个不同的高度, 且相邻高度差不应为5 的要求, 我们应该减去不满足要求的锁具。 在具体求每批锁的个数以及可以装多少箱时, 既可以用排列组合法也可以编程用计算机求解。 这里我们用 Matlab 编程求解。 我们对 5 个钥匙槽的高度进行五重循环, 并将判断条件设置为 5 个槽的高度中至少有 3 个不同的数且相邻两槽的高度之差不能为 5, 进行判断。 将满足判断条件的累加起来, 最后输出即可得到一批锁具总数的大小。 可以装的箱数用锁具总数除于 60 即可得到。 程序如下: count=0; for h1=1: 6 a(1) = h1;装箱问题 - 道客巴巴