一道不限制编程语言的经典题“细菌会多长时间充满瓶子”的题目如果做?PHP、C、JS都可以,但我不会做~求指点

juhenj 发布于 2014/05/27 09:46
阅读 1K+
收藏 3
PHP

【领华为电脑包】容器化时代到来!跳转机分配问题终于“有救”了!>>>

题目:
       有一种细菌,经过一分钟分裂为2个,再过一分钟,分裂为4个,这样,将一个细菌放在一个瓶子里面,一个小时后瓶子被细菌充满了。现在假设一开始放入瓶中的为两个细菌,那么到充满瓶子要多长的时间?


     也不限制编程语言,这个怎么写啊?

原文地址:链接

加载中
1
方权军
方权军

0--1  1--2    2--4   3--8  4--16 ......... n--(n-1)*2  采用递归方式最简单可以算出 n=60时候

0--2  1--4   2--8  同理 得出n多少时候达到之前的60时候的数 



max佩恩
max佩恩
根据2^n可以算出 从1个细胞到 X个细胞所用时间,然后用1小时减去这个时间即可
方权军
方权军
2^n
1
梅开源
梅开源
<?php
//求总量, 返回$germCount的2的$Duration次方
function getGross($germCount,$Duration){
	return $germCount*pow(2,$Duration);
}

//求时间, 返回$germCount个繁殖到$gross个要多少时间
//适当考虑溢出问题
function getDuration($germCount,$gross ){
	$dual=0;
	if($germCount<$gross){
		while($germCount<$gross){
			$germCount=2*$germCount;
			$dual++;
		}
		return $dual;
	}
}

echo '一个瓶子装满的细菌量为:<br/>';
$temp=getGross(1,60);
echo $temp.'<br/>';
echo '初始放2个细菌,装满的时间为:<br/>';
echo getDuration(2,$temp );

?>



0
leo108
leo108
这种题目不是看一眼就知道答案的么,还需要编程?
juhenj
juhenj
但我不知道怎么写啊
0
伊藤熊吉
L4in
L4in
诚哥智商捉鸡。
juhenj
juhenj
编程怎么写?
方权军
方权军
哈哈 抱歉 别介意啊
伊藤熊吉
伊藤熊吉
回复 @方权军 : 你们别这样...
方权军
方权军
说30 想当然式掉坑
下一页
0
Romen
Romen
算出满瓶是多少个,然后再计算2个的情况。。。
0
L4in
L4in
print 60-1



不谢。
0
0
纠结名字
放两个跟放一个的本质区别就是节省了第一个1分钟。。。
0
lingxi27
lingxi27
这根本不能作为一道编程题
返回顶部
顶部