php怎么解决三个水桶等分8升水问题


这篇文章主要介绍了php怎么解决三个水桶等分8升水问题的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php怎么解决三个水桶等分8升水问题文章都会有所收获,下面我们一起来看看吧。有三个容积分别为3升、5升、8升的水桶,其中容积为8升的水桶中装满了水,容积为3升和容积为5升的水桶都是空的。三个水桶都没有刻度,现在需要将大水桶中的8升水等分成两份,每份都是4升水,附加条件是只能这三个水桶,不能借助其他辅助容器。“恩,是的,这是一个很经典的问题。”“然而,我们并不能想全,不信请继续往下看。””废话不多说,直接看方法吧。“将8L的水桶中的水,倒满5L的水桶,这时:8L水桶为3L、5L水桶为5L、3L水桶为0L将5L的水桶中的水,倒满3L的水桶,这时:8L水桶为3L、5L水桶为2L、3L水桶为3L将3L的水桶中的水,倒入8L的水桶,这时:8L水桶为6L、5L水桶为2L、3L水桶为0L将5L的水桶中的水,倒入3L的水桶,这时:8L水桶为6L、5L水桶为0L、3L水桶为2L将8L的水桶中的水,倒入5L的水桶,这时:8L水桶为1L、5L水桶为5L、3L水桶为2L将5L的水桶中的水,倒满3L的水桶,这时:8L水桶为1L、5L水桶为4L、3L水桶为3L将3L的水桶中的水,倒入8L的水桶,这时:8L水桶为4L、5L水桶为4L、3L水桶为0L将8L的水桶中的水,倒满3L的水桶,这时:8L水桶为5L、5L水桶为0L、3L水桶为3L将3L的水桶中的水,倒入5L的水桶,这时:8L水桶为5L、5L水桶为3L、3L水桶为0L将8L的水桶中的水,倒满3L的水桶,这时:8L水桶为2L、5L水桶为3L、3L水桶为3L将3L的水桶中的水,倒满5L的水桶,这时:8L水桶为2L、5L水桶为5L、3L水桶为1L将5L的水桶中的水,倒入8L的水桶,这时:8L水桶为7L、5L水桶为0L、3L水桶为1L将3L的水桶中的水,倒入5L的水桶,这时:8L水桶为7L、5L水桶为1L、3L水桶为0L将8L的水桶中的水,倒满3L的水桶,这时:8L 香港云主机水桶为4L、5L水桶为1L、3L水桶为3L将3L的水桶中的水,倒入5L的水桶,这时:8L水桶为4L、5L水桶为4L、3L水桶为0L我相信答案肯定不止两个,到底有多少种答案?带着这个疑问,我们来设计一个算法吧。解决这个问题的关键是怎么通过倒水凑出确定的1升水或能容纳1升水的空间。例如,当8L水桶或5L水桶或3L水桶有1L水时,都能快速倒出4L水。“穷举法”水桶初始状态:8L水桶装满水,3L和5L的水桶为空。 水桶最终状态:3L水桶为空,5L和8L的水桶各4L水。假设将每个状态下三个水桶中的水的体积作为status。从 $status = array(8,0,0) 得到 $status = array(4,4,0)。当然还会有一些限制:1.各个水桶的都有最大值:0
0
0
2.当前倒水之后各个水桶的状态,与历史倒水之后各个水桶的状态,不能相同。3.当前水桶为空时,不能倒给其他水桶。4.当前水桶为最大容积时,其他水桶不能再向这个水桶倒水。关于“php怎么解决三个水桶等分8升水问题”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“php怎么解决三个水桶等分8升水问题”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注开发云行业资讯频道。

相关推荐: 如何处理电脑任务管理器多出来的conime.exe进程

这篇文章主要介绍“如何处理电脑任务管理器多出来的conime.exe进程”,在日常操作中,相信很多人在如何处理电脑任务管理器多出来的conime.exe进程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何处理电脑任务管理器多出…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 07/13 19:02
下一篇 07/13 19:03

相关推荐