目录
问题 :
有十堆沙子 沙子放入水中2分钟就会溶解 其中又一堆溶解会变色 现在有4个量杯 由于时间紧迫 只有两分钟时间测试 问应该如何解决?
标记法
二进制标记:
我们可以将四个瓶子看成4个二进制位;我们将能溶解变色设置为1不能溶解变色设置为0;
我们先将十堆沙子进行标号为1 到 10 ;然后我们将这十堆沙子的标号1到10 再按二进制进行表示;1 就是0001;2就是 0010,......10就是1010;这样我们就标记好了;
然后我们开始进行放沙子,我们将每一堆沙子取一部分放入每一个量杯,保证每一个量杯都有这十堆沙子,然后等待两分钟;等待沙子变色 。
如果是1和3号杯子变色;那么对应的二进制就是0101(5);那么就是说是第五堆沙子会溶解变色;以此类推。
排序标记:
我们可以进行如上图标记,比如说1:1就是将第一堆沙子只放入第一个量杯;8: 1 4就是将第八堆沙子放入 1号和4号杯子;由于打不出这个符号然后后面都用(C 1 4)代替,(C 1 4)的意思在这里就是从四个杯子中选择1个量杯进行放沙子;(C 2 4)就是从四个杯子中选择两个进行放沙子。
通过这样的标记我们就算是标记完了;然后判断结果;如果说是1 3号杯子溶解变色;我们通过查如上的表就可以知道为第6堆沙子;
以上即为这两种标记法。
探讨
接下来我们来探讨这两种标记法的标记上限;
二进制标记:以此题来说 我们有四个量杯;每个量杯的状态可以用0 1 表示 ;也就是有四个二进制位 所以他的最终标记上限就是2^4=16,可以标记16种;(0000也算一种,所以16种)
排序标记:对于此题我们可以从四个量杯种选择:所以他的最终上限就是 (C 0 4)+(C 1 4) +(C 2 4)+(C 3 4)+(C 4 4)=1+4 +6+4+1=16种
所以两种标记的种数是一样的
至于为什么相等,可以通过举列子;也可以通过数学二项式证明
以上及时二进制标记法和排序标记法的详解。
总结
这两种标记法其实本质上都是通过量杯来表示0 1状态 然后再通过不同的状态与不同的量杯组合来标记为不同的数;比如说如果这个量杯不止是0 1状态 假如他有-1 0 1三个状态,我们就可以将它延展至3进制或者一种更精巧的标记;
总而言之 标记就是状态和有多少个表状态物的组合。