二进制应用
记忆方面
记忆挑战赛中,给出100个完全正常的灯泡,亮灭状态随机,快速记忆。
这里给出六十四盏灯泡的情况:
状态:
亮亮亮灭 灭亮灭灭 亮灭灭亮 灭亮亮灭
灭灭亮亮 灭亮灭亮 亮灭亮灭 亮亮灭灭
灭灭亮灭 灭亮亮灭 亮灭亮灭 灭亮亮亮
灭亮亮灭 亮亮灭灭 亮亮亮亮 灭亮亮亮
用1代表灭,0代表亮。
只要记忆这个十六进制的,16个数就行。描述灯泡情况的时候只需要还原回去就行。
对于100盏灯,需要记忆的便有25个数。
老鼠试毒药
问题:100瓶液体,99瓶是水,1瓶是毒药。如果老鼠喝下毒药,1周后会死亡。现在给你一周的时间,至少需要多少只小白鼠,才能将毒药试出来呢?
解答:
首先给药瓶标上号(1~100)。
鼠1喝的都是第一位是1的药瓶,也就是64号及其以上的(64,65,66,67…),鼠2喝的都是第二位是1的药瓶,也就是(32~63,96–100),鼠7喝的都是最后一位是1的药瓶,也就是编号都是奇数的。其他的特征就不那么明显,比如鼠6喝了2号、3号…98号、99号,之间还有一些,但都是第六位数字是1的。
情况一:1、3、5死了,2、4、6、7没有死。
说明鼠1喝到毒药,而这个毒药的编号第一位就是1。同理毒药的第三位,第五位也是1。鼠2没有死,因为它喝的是第二位是1的,那么说明第二位是1的液体都是水,那么毒药的第二位就是0。同理第四位,第六位,第七位都是0。
有毒的那瓶是:1010100,也就是84号。
情况二:2、3死了,1、4、5、6、7没有死。
有毒的那瓶是:0110000,也就是48号。
情况会有一百种,反正死了就是1,没死就是0。最后转为十进制就行。
如果药瓶有1000瓶,只有1瓶试毒药。用的方法是一样的,至少需要老鼠10只,因为210=1024>1000>29=512。
如果变成鼠1喝第一位是0的药瓶,鼠2喝第二位是0的药瓶,,,。那么死了就是0,没死就是1。最后转十进制。
囚徒问题
有100个囚犯,这100个囚犯要枪毙。首先100个囚犯站成一排,报数。报到奇数就枪毙,报到偶数就留下。留下之后再站成一排,然后再报数枪毙,奇数就枪毙,偶数就留下。这样一直持续下去,直到剩一个就把他放了。请问如果你想最后被放掉,那么你在最开始站队的时候应该站到什么样的位置呢?
答案:64。
站的位置都是2i<总数,i取最大值
推广:
- 若200人,站第128个
- 若300人,站第256个
- 若400人,站第256个
街头不言语测姓名
经典的不言语测姓名。
就是在写着数十个姓氏的卡片上,让你找出所有卡片上自己的姓氏。然后算命的就知道你的姓氏。
解析:算命的给姓氏进行编码,其实就是百家姓的顺序。
比如拿到了第五张和第七张卡片上面带有自己的姓氏,那么(0000101)转换成十进制就是5,这个姓氏就是周。
如果拿了第四和第六张,(0001010)就是10,姓氏是陈。
赵钱孙李,周吴郑王。冯陈褚卫,蒋沈韩杨。
朱秦尤许,何吕施张。孔曹严华,金魏陶姜。
结语
凡是生活中只有两种状态的事物,现象,都可以运用到二进制。
在题目顺序不变的情况下,判断题答案都可以用二进制的方式记忆。
人的一双手,用普通的手指计数法,只能从一表示到十。如果将手指伸直记为1,弯曲记为0,那么可以表示表示的数将有2的十次方个,也就是1024个。手指全部弯曲就表示0,手指全部伸直就表示1023(11111111112),只竖起双手的中指表示132(00100001002)。