分油算法:一个桶中有12斤油最多也只能装12斤,要求倒出6斤,可现在另外只有两个桶,分别可装9斤与5斤,请问应如何来倒?
程序如何实现
倒退法:12斤油桶设为a,5斤油桶设为b,9斤油桶设为c
假设油已经倒出完毕,呢么a,b,c三个桶里面的油,肯定有一个桶是6斤油,而肯定不是b,因为b最多能装5斤油,也就是说6斤的油肯定不是在a中就是在b中,又因为总共有12升,所以可以肯定的是ac各6斤油,而b则为0,
下面是具体的倒油过程:
初始阶段:a=12,b=0,c=0
1.从a桶向b桶中倒油,直到b桶倒满为止,这时a桶剩下a=12-5=7,而b桶则为b=5,
2.从b桶向c桶倒油,直到b桶的油倒完为止,此时c=5,而b=0,
3.从a桶向b桶中继续倒油,直到b桶满了,此时a=12-5-5=2,而b=5
4.从b桶向c桶中倒油,直到c桶满了为止,这时c=5+4=9,而b=5-4=1
5.将c桶中的油全部倒入a中,此时a=2+9=11,而b=1,
6,将b中的油全部倒入c中,此时b=0,c=1,
7.将a中的油倒入b中,直到b满了为止,此时b=5,a=11-5=6,
8.将b中的油全部倒入c中,此时c=1+5=6,b=0
倒油完毕!!!!!
//伪代码
function daoyou (){
$a=12,$b=0,$c=0;
$a=12-5;
$b=5;
$c=$b;$b=0;
$a=12-5-5;$b=5;
$c=9;$b=$b-(9-$b);
$a=$a+$c;
$c=$b;$b=0;
$b=$a-($a-5);$a=$a-$b;
$c=$c+$b;
echo "到油完毕:";
}
分享到:
相关推荐
分油问题是一个经典的计算机科学问题,它涉及到搜索算法的应用,特别是在优化问题的求解中。在本场景下,我们主要探讨的是如何通过搜索算法来解决这类问题。 分油问题的基本设定是这样的:假设你有一批不同容量的...
亲自写的,并且100%能运行正确,俩个都是回溯法,深度搜索,运行环境是java
随机油漆优化算法(Stochastic Paint Optimizer,简称SPO算法)是一种创新的全局优化方法,源于群智能优化算法的范畴,常用于解决复杂的多模态优化问题。它借鉴了自然界中油漆滴落过程的随机性,模拟油漆在平面上...
《小孩分油问题的广度优先搜索算法及C++实现》 小孩分油问题是一个经典的逻辑谜题,它涉及到如何利用有限的资源精确地分配物品。在这个问题中,两个小孩只有一斤、七两和三两的三个瓶子,以及一斤的油。目标是将一...
随机油漆算法,是一种在计算机图形学中用于模拟真实世界中物体表面颜色混合效果的技术。它源于现实生活中油漆的混合原理,当多种颜色的油漆混合在一起时,最终的颜色是所有颜色的加权平均结果。在数字图像处理和游戏...
特别是在油罐多分布的沿海港口、岛屿、波斯湾等海岸带储油地区,这些深度学习算法能够有效识别出油罐目标,无论油罐的尺度如何变化。 为了进一步提高油罐检测的精度,研究者们提出了一些改进措施。例如,通过对预设...
例如,在计算机算法设计领域,分油问题这类问题可以帮助设计出更有效的资源分配算法,这些算法可以在资源受限时作出最优选择。 总之,通过分油问题的求解,我们不仅可以锻炼逻辑思维,还可以学习到如何在有限资源的...
分油问题是一个经典的计算机编程问题,它涉及到数据结构和算法的应用。在这个问题中,我们通常假设有一批油和一些容量不等的瓶子,目标是尽可能有效地将油分配到这些瓶子中,使得每个瓶子都装满或者不满,但不溢出。...
假设有一系列油库和管道,目标是确定如何最大限度地将油从源头运输到目的地。这可能需要用到Ford-Fulkerson或Edmonds-Karp算法,它们都是基于增广路径的概念,寻找从源节点到汇点的最大流量。在这个过程中,我们需要...
综上所述,“寻找一种最佳的分油方案”是一个涉及算法选择、数据结构设计、效率优化和约束处理的综合性问题。通过分析和解决这个问题,我们可以深入理解计算机科学中的优化策略,并提高解决实际问题的能力。在这个...
分油问题便是其中之一,它要求学生不仅要掌握数据结构知识,还要具备算法设计和分析的能力,从而找到将一定量的油从一个容器转移到另一个容器中的最优解。 分油问题的背景是一个经典的智力游戏:有三个容量不等的...
基于PSO工具箱的函数寻优算法 基于遗传算法的BP神经网络优化算法 基于遗传算法的LQR控制器优化设计 基于遗传算法的TSP算法 基于粒子群算法的PID控制器优化设计 粒子群算法的寻优算法 蚁群算法的优化计算——TSP优化 ...
在计算机科学和算法领域,"分油问题"是一个经典的数学挑战,通常被用作教学实例来教授编程思维和优化策略。此问题源于一个寓言故事,涉及一个聪明的小孩如何公平地分配一定量的油。在这个特定的案例中,"children_...
《MATLAB智能算法详解——探索优化与机器学习的利器》 MATLAB,作为一种强大的数学计算软件,被广泛应用于科学计算、工程分析以及机器学习等领域。本文将深入探讨30种利用MATLAB实现的智能算法,其中包括遗传算法、...
多尺度并联卷积神经网络遥感影像油罐目标检测算法 神经网络 多尺度并联卷积神经网络(Multi-scale Parallel Convolutional Neural Networks)是一种基于深度学习的油罐目标检测算法。该算法通过使用多个卷积神经...
C语言实现无刻度油桶分油问题解决方案 本文将详细介绍如何使用C语言解决无刻度油桶分油问题。该问题的描述是:设有大小不等的X、Y、Z三个无刻度的油桶,分别能够盛满油X、Y、Z,初始时,仅X油桶盛满油,Y和Z油桶为...