日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

老鼠喝毒药问题分析及代码

發(fā)布時間:2023/12/9 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 老鼠喝毒药问题分析及代码 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

(一)題目:

? ? ? ? 有100瓶裝水的水瓶,其中一瓶混了毒藥,每只測試的小老鼠喝下毒藥后要t1的時間才能顯示出是否喝了毒藥,并只給t2的時間來判斷找出毒藥的最少實驗老鼠。

分析:

? ? ? ? 如果有兩天時間,老鼠有3種生死可能性:0-? 10 11;而一只老鼠在這2天時間里可以測3(3^1)個瓶子是否有毒并找出來,兩只老鼠就可以測出9(3^2)個瓶子是否有毒并找出來,以此類推,x只老鼠可以測出4^x個瓶子并找出有毒的那瓶。

? ? ? ? 同理,如果有三天時間,老鼠有4種生死可能性 (0死?1生):0--??10-??110??111。而一只老鼠在這3天時間里可以測4(4^1)個瓶子是否有毒并找出來,兩只老鼠就可以測出16(4^2)個瓶子是否有毒并找出來,以此類推,x只老鼠可以測出4^x個瓶子并找出有毒的那瓶。

代碼如下:

#include<bits/stdc++.h> using namespace std; int main() {int n, t1, t2;cin >> n >> t1 >> t2;int m = t2 / t1 + 1;for (int i = 0;; i++)if (pow(m, i) >= n) {cout << i; break;} }

(二)題目:

? ? ? ? 有100瓶裝水的水瓶,其中一瓶混了毒藥,每只測試的小老鼠喝下毒藥后要一天的時間才能顯示出是否喝了毒藥,判斷找出毒藥的最少實驗老鼠x.

分析:

? ? ? ??假設有8瓶水,那么小老鼠試驗后的可能性有:(0不喝水,1喝水)

0 0 0 --第一瓶
0 0 1 --第2瓶
0 1 0 --第3瓶
0 1 1 --第4瓶
1 0 0 --第5瓶
1 0 1 --第6瓶
1 1 0 --第7瓶
1 1 1 --第8瓶

其實這題和上面那題差不多,第一題會了的話,這題也是一樣的思路可以寫出來,相當于t1=1,t2=1;(代碼自己改一下就行啦)

總結(jié)

以上是生活随笔為你收集整理的老鼠喝毒药问题分析及代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。