小白鼠检验毒水问题
有1000瓶水,其中有一瓶有毒,小白鼠只要嘗一點(diǎn)帶毒的水24小時(shí)后就會(huì)死亡,至少要多少只小白鼠才能在24小時(shí)時(shí)鑒別出哪瓶水有毒?
答案是2^n>=1000,其中n就是小白鼠的數(shù)量。
設(shè)計(jì)方案:
給1000個(gè)瓶分別標(biāo)上如下標(biāo)簽(10位長度):?
0000000001 (第1瓶)?
0000000010 (第2瓶)?
0000000011 (第3瓶)?
......?
1111101000 (第1000瓶)?
從編號(hào)最后1位是1的所有的瓶子里面取出1滴混在一起(比如從第一瓶,第三瓶,。。。里分別取出一滴混在一起)并標(biāo)上記號(hào)為1。以此類推,從編號(hào)第一位是1的所有的瓶子里面取出1滴混在一起并標(biāo)上記號(hào)為10。現(xiàn)在得到有10個(gè)編號(hào)的混合液,小白鼠排排站,分別標(biāo)上10,9,。。。1號(hào),并分別給它們灌上對(duì)應(yīng)號(hào)碼的混合液。24小時(shí)過去了,過來驗(yàn)尸吧:?
從左到右,死了的小白鼠貼上標(biāo)簽1,沒死的貼上0,最后得到一個(gè)序號(hào),把這個(gè)序號(hào)換成10進(jìn)制的數(shù)字,就是有毒的那瓶水的編號(hào)。?
檢驗(yàn)一下:假如第一瓶有毒,按照0000000001 (第1瓶),說明第1號(hào)混合液有毒,因此小白鼠的生死符為0000000001(編號(hào)為1的小白鼠掛了),0000000001二進(jìn)制標(biāo)簽轉(zhuǎn)換成十進(jìn)制=1號(hào)瓶有毒;假如第三瓶有毒,0000000011 (第3瓶),第1號(hào)和第2號(hào)混合液有毒,因此小白鼠的生死符為00000011(編號(hào)為1,2的鼠兄弟掛了),0000000011二進(jìn)制標(biāo)簽轉(zhuǎn)換成十進(jìn)制=3號(hào)瓶有毒。
答案是2^n>=1000,其中n就是小白鼠的數(shù)量。
設(shè)計(jì)方案:
給1000個(gè)瓶分別標(biāo)上如下標(biāo)簽(10位長度):?
0000000001 (第1瓶)?
0000000010 (第2瓶)?
0000000011 (第3瓶)?
......?
1111101000 (第1000瓶)?
從編號(hào)最后1位是1的所有的瓶子里面取出1滴混在一起(比如從第一瓶,第三瓶,。。。里分別取出一滴混在一起)并標(biāo)上記號(hào)為1。以此類推,從編號(hào)第一位是1的所有的瓶子里面取出1滴混在一起并標(biāo)上記號(hào)為10。現(xiàn)在得到有10個(gè)編號(hào)的混合液,小白鼠排排站,分別標(biāo)上10,9,。。。1號(hào),并分別給它們灌上對(duì)應(yīng)號(hào)碼的混合液。24小時(shí)過去了,過來驗(yàn)尸吧:?
從左到右,死了的小白鼠貼上標(biāo)簽1,沒死的貼上0,最后得到一個(gè)序號(hào),把這個(gè)序號(hào)換成10進(jìn)制的數(shù)字,就是有毒的那瓶水的編號(hào)。?
檢驗(yàn)一下:假如第一瓶有毒,按照0000000001 (第1瓶),說明第1號(hào)混合液有毒,因此小白鼠的生死符為0000000001(編號(hào)為1的小白鼠掛了),0000000001二進(jìn)制標(biāo)簽轉(zhuǎn)換成十進(jìn)制=1號(hào)瓶有毒;假如第三瓶有毒,0000000011 (第3瓶),第1號(hào)和第2號(hào)混合液有毒,因此小白鼠的生死符為00000011(編號(hào)為1,2的鼠兄弟掛了),0000000011二進(jìn)制標(biāo)簽轉(zhuǎn)換成十進(jìn)制=3號(hào)瓶有毒。
在8瓶水時(shí),第一只混合1234,第二只混合2367,第三只混合3456。
參考:
http://blog.csdn.net/mengtnt/article/details/8477747
http://zhidao.baidu.com/link?url=dblZZigBn6dLUEe5A_K0TLnbsE83s2W9_4HXjhMPb3tG_0tF578Yx8PF9MkADhonVlguN7shreIO4BJY22aETa
總結(jié)
- 上一篇: c语言编写程序计算行列式值,新手作品:行
- 下一篇: 大学计算机vb基础知识6,计算机基础课-