有趣的问题--12 coins problem
问题描述:
12个金币,其中有一枚是假的,重量与众不同。
现有一架天平,需要你用最少的次数来称重,然后告诉我:
(1)哪个金币是假的
(2)它到底是更轻还是更重。
(注:此处为3次)

{解题说明:
第一步: 一边4个,如果天平是平的,假币就在剩下的4个中,否则就在天平上的8个中。现在分情况1:在4个中: 之间再在天平上一边1个,这样不管哪种情况待排除的就剩下2个了,拿着两个和标准的(也就是你已经排除过的某个)比一下就好了情况
2:天平上的8个中,这里有一个要点:重的球每次称那一侧都会重,轻的球每次称那一侧都会轻,所以有时轻有时重的肯定是普通的给这8个球编个号,重的一组叫1 2 3 4,轻的一组叫5 6 7 8,还有4个正常的球都叫x好了。
注意这里我得到了两种解决方法而且不排除会有第三种第四种或者更多:
方法1:
1.天平左边摆上1XXX ,右边摆上2348
2.1如果出现了 左边依旧重于右边的话,我们可以知道1和8是有问题,但是不知道假币是更轻还是更重(因为234中不存在能对结果产生影响的影响因子,XXX都为正常的)
2.2如果出现了 两侧一样 重的话,我们可以得出 出问题的在于(5,6,7),由情况2的已知条件可以知道出问题的假币应该是更轻,很简单可以通过一次称量在5,6,7中找到这枚假币!——ex:5左6右,斜了的话轻为假,平的话7为假。
(方法1这段是我个人描述)
方法2:
我们左边摆1 2 5, 右边摆3 6 X,剩下4 7 8不放上来,假设天平平了,那么在4 7 8中,称一下78即可,平了表示4是重了的,不平谁轻就是谁现在看天平不平的情况:假如1 2 5 重, 那么候选的球是1 2 6,和上面类似,称12即可。假如1 2 5 轻,那么候选的球是3 5,两个球随便和标准球比一下好了
解题完毕}
在这之后我通过搜索获取了一些信息,关于这个问题国外有人发过paper呢,用信息论的知识进行了解释并且做了推广。
后来我去图书馆借了《信息论基础》——美国两位作者合著的书籍,翻阅了一下,发现信息论跟我想象的还是有很大不同的,我本希望能通过信息论来帮助自己掌握一些哲学上的原理来指导生活(好吧确实是这样~~~~)可此时发现信息论涉及到非常多的数学原理,对数学的要求较高,目前更多的是应用于编码工作,这对于通信工程的人还是很有帮助的。一些阅读之后很快证明自己不感兴趣。
最后:
如果对于 12coins 问题怀有兴趣并且希望能得到一些启发的话,我推荐这篇文章,相信一定能开拓你的思维:
类似的问题:N 个乒乓球中有一个和其他的质量不同,用天平最少几次一定能称出来? 知乎讨论
就酱 :)
有趣的问题--12 coins problem的更多相关文章
- 实验12:Problem I: 成绩排序
Home Web Board ProblemSet Standing Status Statistics Problem I: 成绩排序 Problem I: 成绩排序 Time Limit: 1 ...
- 实验12:Problem H: 整型数组运算符重载
Home Web Board ProblemSet Standing Status Statistics Problem H: 整型数组运算符重载 Problem H: 整型数组运算符重载 Tim ...
- 实验12:Problem F: 求平均年龄
Home Web Board ProblemSet Standing Status Statistics Problem F: 求平均年龄 Problem F: 求平均年龄 Time Limit: ...
- 实验12:Problem C: 重载字符的加减法
Home Web Board ProblemSet Standing Status Statistics Problem C: 重载字符的加减法 Problem C: 重载字符的加减法 Time ...
- 实验12:Problem J: 动物爱好者
#define null ""是用来将字符串清空的 #define none -1是用来当不存在这种动物时,返回-1. 其实这种做法有点多余,不过好理解一些. Home Web B ...
- 实验12:Problem G: 强悍的矩阵运算来了
这个题目主要是乘法运算符的重载,卡了我好久,矩阵的乘法用3个嵌套的for循环进行,要分清楚矩阵的乘法结果是第一个矩阵的行,第二个矩阵的列所组成的矩阵. 重载+,*运算符时,可以在参数列表中传两个矩阵引 ...
- 实验12:Problem E: 还会用继承吗?
Home Web Board ProblemSet Standing Status Statistics Problem E: 还会用继承吗? Problem E: 还会用继承吗? Time Li ...
- 实验12:Problem D: 判断两个圆之间的关系
Home Web Board ProblemSet Standing Status Statistics Problem D: 判断两个圆之间的关系 Problem D: 判断两个圆之间的关系 T ...
- xtuoj 1233 coins(dp)
Coins Accepted : 120 Submit : 305 Time Limit : 1000 MS Memory Limit : 65536 KB Coins Problem Des ...
随机推荐
- android-The method findViewById(int) is undefined for the type ContactMainFragment报错
@Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view ...
- html5移动端Meta设置
1. 强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览. <meta name="viewport" content= ...
- 新手必学的java报表开发工具FineReport实用技巧
1.在制作模板时,如何将报表中的值传递到超链接网页呢? 在项目中以frame方法把F1.CPT放到项目的页面中,对F1.CPT做网络报表超链接F2.CPT,然后在F2.cpt页面中,做个超链接的网页, ...
- Python教程[廖雪峰],主要是实践
- java utf-8文件处理bom头
UTF? UTF,是UnicodeTransformationFormat的缩写,意为Unicode转换格式. 即怎样将Unicode定义的数字转换成程序数据.utf是对Unicode的一种编码格式化 ...
- Objective-C声明在头文件和实现文件中的区别
Objective-C声明在头文件和实现文件中的区别 转自codecloud(有整理) 调试程序的时候,突然想到这个问题,百度一下发现有不少这方面的问答,粗略总结一下: 属性写在.h文件中和在.m文件 ...
- Gprinter热敏打印机光栅位图点阵数据解析工具
最近参与的项目有一个需求,解析佳博热敏打印机的光栅位图点阵数据并保存为图片文件.数据是通过Bus Hound抓取的,如下图所示. 其中1b 40为初始化打印机的指令,对应的ASCII码为ESC @,1 ...
- UESTC 764 失落的圣诞节 --RMQ/线段树
题意:n种物品,每种物品对不同的人都有不同的价值,有三个人选,第一个为普通学生,第二个是集,第三个是祈,集和祈可以选一样的,并且还会获得加分,集和祈选的普通学生都不能选,问三个人怎样选才能使总分最高. ...
- hdu 1255
覆盖的面积 Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
- javascript中比较数字大小
做项目,遇到一个让人非常纠结的问题,就是获取的两个值比较,却出现了一位数比二位数大的情况.刚开始还以为哪里写错了,检查了几遍,用ie调了下,意识到是应该是用错了比较方法了.才想起以前也碰到过这种情况的 ...