这个问题怎么用java程序解决啊

我们有很多瓶无色的液体,其中有一瓶是毒药,其它都是蒸馏水,实验的小白鼠喝了以后会在5分钟后死亡,而喝到蒸馏水的小白鼠则一切正常。现在有5只小白鼠,请问一下,我们用这五只小... 我们有很多瓶无色的液体,其中有一瓶是毒药,其它都是蒸馏水,实验的小白鼠喝了以后会在5分钟后死亡,而喝到蒸馏水的小白鼠则一切正常。现在有5只小白鼠,请问一下,我们用这五只小白鼠,5分钟的时间,能够检测多少瓶液体的成分 展开
 我来答
桂镶桖28
2013-11-18 · TA获得超过593个赞
知道小有建树答主
回答量:307
采纳率:0%
帮助的人:211万
展开全部

答案是 15 这个用java好算

sum = 0;
n = 5;
while(n > 0){
    sum += n;
    n--;
}

原理:A B C D E 5个小白鼠

第一步,5个小白鼠各喝一瓶,如果死了是一个,哪个死了,说明那个是毒药。

第二步,AB 喝一个, BC 喝一个,以此类推,可以再喝4个,如果死了是两个,哪两个死了,说明那个是毒药

第三部,ABC 喝一个,BCD 喝一个,以此类推,可以喝3个,如果死了是三个,哪三个死了,说明那个是毒药

第四部,ABCD喝一个,BCDE喝一个,如果死了4个,哪4个死了,说明那个是毒药

第五步,ABCDE 都喝一个,如果都死了,说明这个是毒药。


总共下来,每个小白鼠喝了5口,根据死的数量和那个死了可以检测出15瓶

果然丨在动
2013-11-18 · TA获得超过719个赞
知道小有建树答主
回答量:672
采纳率:50%
帮助的人:333万
展开全部
假设每喝一次药间隔 5秒钟,计时器变量 int time=0; 5分钟就是300秒;
第一只老鼠(A)喝药:
第一次 0 + 5 = 5秒; 死亡时间:300+5=305
第二次 5 + 5 = 10; 死亡时间:300+10=310;
第三次 10 + 5 = 15; 死亡时间:300+15=315;
第四次 15 + 5 = 20; 死亡时间:300+20=320;
第五次 20 + 5 = 25;死亡时间:300+25=325;
依次类推。。。
每喝一次药就是一个瓶子,如果第七瓶是毒药的话,老鼠死亡的时间应该是 7*5+300=335,也就是五分钟后的第35秒,第八瓶是毒药的话,老鼠死亡时间是第五分钟后的第40秒。
如果每次喝药的间隔只有零点几秒,时间安排也非常精确的话,一只老鼠就能检测完所有的瓶子,只要计时老鼠实际死亡的时间就能找出哪一瓶是毒药。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
严肃的甲道士
2013-11-18 · 传播技术传播爱,笔芯❤️
严肃的甲道士
采纳数:337 获赞数:619

向TA提问 私信TA
展开全部

1、字段:老鼠五只(1,2,3,4,5) 瓶子编号 1~n  时间

2、方法:循环分配给五只老鼠液体瓶五分钟后终止程序。


public static void main(String[] args) throws InterruptedException {
         // 随机产生一个含毒药的瓶子
     int mark = (int)(Math.random()*100);
         int sum = 0;      
 
     // 定义一个时间
     Date date = new Date();
     
     for (int j = 0;;j++) {
for (int i = 0; i < 5; i++) {
Date d = new Date();
long sec = (d.getTime() - date.getTime())/60000; // 试验时间计时   单位:分钟
// 默认每次试验耗时10秒  若含毒药的药瓶已试验有两种情况终止试验 1、五分钟内老鼠死亡 2、时间到  综合试验时间可维持5分钟
if(j == mark && sec <= 5){
// 获取有毒药瓶的老鼠为
sum = ((5*60)/10)*5;
System.out.println("第"+j+"轮试验中"+i+"号老鼠饮用了带毒药瓶。共计试验药瓶"+sum+"只");
break;
}else if(sec == 5){
sum = ((5*60)/10)*5;
System.out.println("5分钟内未有老鼠因毒药死亡。共计试验药瓶"+sum+"只");
break;
}
Thread.sleep(10000); // 试验周期为10秒一次
}
    if(sum != 0){
     break;
    }
}
  }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhangsonglin_c
高粉答主

2013-11-18 · 醉心答题,欢迎关注
知道大有可为答主
回答量:3.7万
采纳率:83%
帮助的人:6992万
展开全部
因为要看到结果(不是毒药)至少要5分钟。因此5只小白鼠5分钟可以检测5瓶液体。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千叶育儿
2013-11-18 · 育儿、诗词分享,每天进步一点点!
千叶育儿
采纳数:1524 获赞数:5379

向TA提问 私信TA
展开全部
5瓶.每只喝一口,5分钟后没事再喝第二口
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友28d8a36
2013-11-18 · TA获得超过110个赞
知道答主
回答量:117
采纳率:0%
帮助的人:64.6万
展开全部
这个问题用什么java啊,这明明就是个数学问题啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式