亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python兔子毒藥問(wèn)題實(shí)例分析

 更新時(shí)間:2015年03月05日 12:05:10   作者:Sephiroth  
這篇文章主要介紹了Python兔子毒藥問(wèn)題,實(shí)例分析了兔子毒藥問(wèn)題的算法原理與Python解決方法,需要的朋友可以參考下

本文實(shí)例分析了Python兔子毒藥問(wèn)題。分享給大家供大家參考。具體分析如下:

問(wèn)題大致是這樣的:1000瓶無(wú)色無(wú)味的液體,其中一瓶為毒藥,其它皆為清水,毒藥只取一滴與清水混合為一瓶也可以毒死兔子?,F(xiàn)在有10只兔子,當(dāng)兔子喝下毒藥兩個(gè)小時(shí)后死去,請(qǐng)?jiān)O(shè)計(jì)一種方案,能夠在24小時(shí)內(nèi)找到這瓶毒藥。
................2分鐘后
前面的問(wèn)題你一定想清楚了,那么略改動(dòng)一下:1000瓶無(wú)色無(wú)味的液體,其中一瓶為毒藥,其它皆為清水,毒藥只取一滴與清水混合為一瓶也可以毒死兔子?,F(xiàn)在有10只兔子,當(dāng)兔子喝下毒藥20個(gè)小時(shí)后死去,請(qǐng)?jiān)O(shè)計(jì)一種方案,能夠在24小時(shí)內(nèi)找到這瓶毒藥。
................2分鐘后
有多種方法,比如我每隔5分鐘給兔子喝一次100瓶液體混合在一起的東西,根據(jù)兔子死去的先后順序,就可以判斷是那一瓶了。

有沒(méi)有更好的辦法呢,我這里僅僅提供一種時(shí)間最優(yōu)的方法,也就是在20個(gè)小時(shí)找到這瓶毒藥。當(dāng)然也可以有死的兔子最少,在死去兔子和時(shí)間找到一個(gè)最佳折中點(diǎn)的優(yōu)化問(wèn)題。
方法如下:
給10只兔子編號(hào)1-10,每只兔子代表一個(gè)數(shù),列表如下:
編號(hào)    1    2    3    4    5    ...    10
數(shù)字    1    2    4    8    16    ...    512

瓶子也有編號(hào),依次為1-1000。    呵呵,聰明的你應(yīng)該知道我要怎么做了吧,不過(guò)我還是要說(shuō)下去,并寫(xiě)python代碼來(lái)實(shí)現(xiàn)。
我希望是當(dāng)編號(hào)為Y1,Y2,Y3...的兔子死去時(shí),可以推導(dǎo)出編號(hào)為X瓶子為毒藥。比如編號(hào)為1,2,4的兔子死去,那就得知 兔子對(duì)應(yīng)的數(shù)字 為1+2+8=11,就是編號(hào)為11的瓶子是毒藥。比如編號(hào)為1,4,10的兔子死去,那就得知 兔子對(duì)應(yīng)的數(shù)字 為1+8+512=521,就是編號(hào)為521的瓶子是毒藥。
現(xiàn)在的問(wèn)題就是要知道編號(hào)不同的每只兔子要喝哪幾瓶液體。

Python代碼如下:

def main():
    """
  baselist是兔子編號(hào)從1-10對(duì)應(yīng)的數(shù)字,
  result是最終每只兔子要喝的液體
    """
  baselist=[1,2,4,8,16,32,64,128,256,512]
  result=[[],[],[],[],[],[],[],[],[],[]]
  for water in range(1,1001):
    watertmp=water
    for i in range(9,-1,-1):
      if (watertmp-baselist[i])>=0:
        watertmp -= baselist[i]
        result[i].append(water)
  for i in range(1,11):
    print "The Num %d rabit need drink the next liquid " % i+1,result[i]
  pass
if __name__=="__main__":
  main()

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Numpy 中的矩陣求逆實(shí)例

    Numpy 中的矩陣求逆實(shí)例

    今天小編就為大家分享一篇Numpy 中的矩陣求逆實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-08-08
  • Python操作MongoDB的教程分享

    Python操作MongoDB的教程分享

    MongoDB?是一個(gè)流行的?NoSQL?數(shù)據(jù)庫(kù),以其半結(jié)構(gòu)化的文檔存儲(chǔ)方式而聞名,本文將帶大家逐步了解如何使用Python與MongoDB進(jìn)行交互,從連接到基本操作,快跟隨小編一起學(xué)習(xí)一下吧
    2023-08-08
  • Python詳細(xì)介紹模型封裝部署流程

    Python詳細(xì)介紹模型封裝部署流程

    本文實(shí)例講述了Python模型封裝部署的原理與實(shí)現(xiàn)方法。封裝即是隱藏對(duì)象的屬性和實(shí)現(xiàn)細(xì)節(jié),僅對(duì)外提供公共訪問(wèn)方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Pycharm設(shè)置去除顯示的波浪線方法

    Pycharm設(shè)置去除顯示的波浪線方法

    今天小編就為大家分享一篇Pycharm設(shè)置去除顯示的波浪線方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • python celery分布式任務(wù)隊(duì)列的使用詳解

    python celery分布式任務(wù)隊(duì)列的使用詳解

    這篇文章主要介紹了python celery分布式任務(wù)隊(duì)列的使用詳解,Celery 是一個(gè) 基于python開(kāi)發(fā)的分布式異步消息任務(wù)隊(duì)列,通過(guò)它可以輕松的實(shí)現(xiàn)任務(wù)的異步處理, 如果你的業(yè)務(wù)場(chǎng)景中需要用到異步任務(wù),就可以考慮使用celery,需要的朋友可以參考下
    2019-07-07
  • Django1.7+python 2.78+pycharm配置mysql數(shù)據(jù)庫(kù)教程

    Django1.7+python 2.78+pycharm配置mysql數(shù)據(jù)庫(kù)教程

    原本感覺(jué)在Django1.7+python 2.78+pycharm環(huán)境下配置mysql數(shù)據(jù)庫(kù)是件很容易的事情,結(jié)果具體操作的時(shí)候才發(fā)現(xiàn),問(wèn)題還是挺多的,這里記錄一下最終的配置結(jié)果,給需要的小伙伴參考下吧
    2014-11-11
  • Python將二維列表list的數(shù)據(jù)輸出(TXT,Excel)

    Python將二維列表list的數(shù)據(jù)輸出(TXT,Excel)

    這篇文章主要介紹了Python將二維列表list的數(shù)據(jù)輸出(TXT,Excel),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 利用Python代碼實(shí)現(xiàn)數(shù)據(jù)可視化的5種方法詳解

    利用Python代碼實(shí)現(xiàn)數(shù)據(jù)可視化的5種方法詳解

    在數(shù)據(jù)科學(xué)中,有多種工具可以進(jìn)行可視化。下面這篇文章主要給大家介紹了關(guān)于利用Python代碼實(shí)現(xiàn)數(shù)據(jù)可視化的5種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2018-03-03
  • Python字符串拼接、截取及替換方法總結(jié)分析

    Python字符串拼接、截取及替換方法總結(jié)分析

    這篇文章主要介紹了Python字符串拼接、截取及替換方法,結(jié)合實(shí)例形式總結(jié)分析了Python針對(duì)字符串的拼接、截取與替換的原理與常見(jiàn)使用技巧,需要的朋友可以參考下
    2016-04-04
  • 關(guān)于多種方式完美解決Python pip命令下載第三方庫(kù)的問(wèn)題

    關(guān)于多種方式完美解決Python pip命令下載第三方庫(kù)的問(wèn)題

    這篇文章主要介紹了多種方式完美解決python pip命令下載第三方庫(kù)的問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12

最新評(píng)論