面试题--火车拉煤

题目:

你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最多只能装1000吨煤,且其能耗比较大——每一公里需要耗一吨煤。请问,作为一个懂编程的煤老板的你,你会怎么运送才能运最多的煤到集市?

第一次想法:

第1次:跑250公里,放下500吨煤,剩余250吨煤刚好回去。

第2次:跑500公里,放下250吨煤,剩余250吨回到第1次停车点,拉上第1次停车250吨回到起点,第一次起点250公里处还剩下250吨煤,第二次起点500公里处剩余250吨煤。

第3次:跑250公里,消耗250吨,拉上起点1剩余的250,在跑到起点2又消耗250,拉起点2的250吨,此时车上刚好1000吨,跑完剩下的500公里,最后剩下500吨。

 

第二次想法:

第一次1000吨煤全部给你消耗,给我把剩余2000吨能拉多远就拉多远! 可求得距离x:1000=5x, x=200。 解得:3000吨煤消耗1000吨运了200公里,剩余2000吨煤,800公里。

第二次同样给你1000吨煤消耗,给我把剩余1000吨能拉多远就拉多远!  可求得距离y:1000=3y, y=1000/3。解得:2000吨煤消耗1000吨运了1000/3公里,剩余1000吨煤,800-(1000/3)公里。

第三次:1000吨煤一次拉完不用回来,消耗多少剩余都是剩下的。解得:1000-(800-(1000/3))=1000-800+(1000/3)=200+333.3=533.3吨

原文地址:https://www.cnblogs.com/yblackd/p/11964316.html

时间: 2024-10-28 10:33:44

面试题--火车拉煤的相关文章

类Runtime和火车运煤问题

1 类Runtime 每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接.可以通过 getRuntime 方法获取当前运行时. 应用程序不能创建自己的 Runtime 类实例. 2 火车运煤问题 问题来源:http://coolshell.cn/articles/4429.html/comment-page-5#comments 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车

经典智力题:火车运煤

题目描述如下: 你是一个煤老板,你在矿区开采了3000吨煤,需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列以煤为动力的火车,这个火车一次最多能运1000吨煤,火车每公里消耗一吨煤.问如何运送才能运最多的煤到集市? ========== -.- ========== 思考时间 ========== -.- ========== 从题中很容易能看出一个矛盾:路程是1000公里,最多运1000吨煤,显然不能直接走.如果直接走的话,不仅没有煤能送过去,而且还会剩下一大堆煤在原地.所以

生活小趣味-火车运煤

周末闲来无事,看到一个很有意思的题目,题目是这样的,假设你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最多只能装1000吨煤,且其能耗比较大-每一公里需要耗一吨煤.请问,作为一个懂编程的煤老板的你,你会怎么运送才能运最多的煤到集市?话说煤老板这年头过的也不是很容易,不过相比程序员来说,还是煤老板享受的机会比我等程序员要好很多~题目看起来很无解,网上也很多人给出了答案和自己的分析过程,能力有限,没有想到最优解

火车运煤问题

题目: 煤矿有 3000 吨煤要拿到市场上卖,有一辆火车可以用来运煤,火车最多能装 1000 吨煤,且火车本身需要烧煤做动力,每走 1 公里消耗 1 吨煤,如何运煤才能使得运到市场的煤最多,最多是多少? 分析: 设出发点为 A ,终点为 B,火车一定不能一下子就从 A 跑到 B,这样就 B 时刚好什么也没剩下.到中点也不行,因为到中点后再回到 A,刚好把自己带的煤全部用完,只烧煤不干活!那到底要走多远返回合适呢? 我们可以倒着推理,最后一次火车到 B 点的最好情况是火车从 A B 之间的某点带

华为机试题 火车进站

描述:给定一个正整数N代表火车数量,0<N<10,接下来输入火车入站的序列,一共N辆火车,每辆火车以数字1-9编号.要求以字典序排序输出火车出站的序列 输入: 有多组测试用例,每一组第一行输入一个正整数N(0<N<10),第二行包括N个正整数,范围为1到9. 输出: 输出以字典序排序的火车出站序列号,每个编号以空格隔开,每个输出序列换行,具体见sample. 样例输入: 3 1 2 3 样例输出: 1 2 3 1 3 2 2 1 3 2 3 1 3 2 1 思路:先对输入序列进行字

[蓝桥杯历届试题] 欧拉与鸡蛋

大数学家欧拉在集市上遇到了本村的两个农妇,每人跨着个空篮子.她们和欧拉打招呼说两人刚刚卖完了所有的鸡蛋. 欧拉随便问:“卖了多少鸡蛋呢?” 不料一个说:“我们两人自己卖自己的,一共卖了150个鸡蛋,虽然我们卖的鸡蛋有多有少,但刚好得了同样的钱数.你猜猜看!” 欧拉猜不出. 另一个补充道:“如果我按她那样的价格卖,可以得到32元:如果她按我的价格卖,可以得到24.5元”. 欧拉想了想,说出了正确答案. 我们不是数学家,懒得列出公式来分析.但计算机可以“暴力破解”,就是把所有可能情况都试验一遍,撞上

Java学习笔记——山西煤老板蛋疼的拉车问题

小荷才露尖尖角,早有蜻蜓立上头 --小池 这个问题是这样描述的: 山西煤老板有3000吨煤,要运到1000km公里外的地方卖.他选择使用火车来运煤,每辆火车行驶一公里将消耗一吨煤,且火车载货上限为1000吨. 山西煤老板是个懂代码的家伙,你觉得它最多能拉多少煤过去? 且不论懂代码的人为什么要选择这么蛋疼的方式拉煤..算了,直接把它抽象成数学问题. 山西煤老板的煤总量为amount,总里程为totalTrail,火车载重为load 这类问题存在隐藏条件: 1.假设每辆车都能装满货物,那么amoun

人人,金山西山居,腾讯互娱,微信,网易游戏offer及面经

转自:http://www.itmian4.com/forum.php?mod=viewthread&tid=3985 首先感谢师兄在两年前发的贴([天道酬勤] 腾讯.百度.网易游戏.华为Offer及笔经面经 ),这篇文章对我帮助很大. 我写这篇文章一是为了感谢这位同是华南理工但素未谋面的师兄,给我推荐这篇文章的炳爷,以及为我解决难题的浩子,羊兄给的项目帮助,洁洁的理解,王兄提供的两个月免费住宿,以及互娱的BOSS,leader,金山的朱先生等人对我择业的帮助,以及所有直接间接帮助过我的人.二是

byr面经两则

人人,金山西山居,腾讯互娱,微信,网易游戏offer及面经 首先感谢师兄在两年前发的贴([天道酬勤] 腾讯.百度.网易游戏.华为Offer及笔经面经 ),这篇文章对我帮助很大. 我写这篇文章一是为了感谢这位同是华南理工但素未谋面的师兄,给我推荐这篇文章的炳爷,以及为我解决难题的浩子,羊兄给的项目帮助,洁洁的理解,王兄提供的两个月免费住宿,以及互娱的BOSS,leader,金山的朱先生等人对我择业的帮助,以及所有直接间接帮助过我的人.二是饮水思源,要把这份活水转赠出去以帮助到更多的人. 我用完之后