【面试题】火车运煤问题
原文链接在此http://coolshell.cn/articles/4429.html
自己的思路 感觉这一题有点像微软一道飞机题,最多几架飞机可以绕地球一圈
想的是利益最大化,第一次到1/3处,放下333t,然后第二次运行到这里时,还有1000t
然后设此点为A点,到达的距离为B点,这个距离为x
x要满足
1、留下的煤最多同时火车能回到起点
2、第三次火车到这里时 正好装满火车上的剩余空间
1000-(x+333+x) = (x+333)
x = 111
第二次火车运行到444处,放下445
最后一次运行445公里,正好到此处全部装上,最后到达目的地剩余445
但这个和一般的解法500km还是更多的533解法差距都很大
【我的方法 应该错误在于没有考虑最多的煤,而是考虑最优化利用煤,详细原因还是有点不太明白,也许是受了飞机那道题的影响,想的是最远距离】
错误剖析:在阿甘同学的帮助下,意识到了自己的错误
错误在于在第一次停靠点,要行使5次才是最优的,而我只行使了3次,这样就浪费了在后面的计算中就多走了路程
总得来说自己思考不是很全面,分析问题的方法仍有待于加强
多跟阿甘讨论问题,有助于拓展我的思路。
但如果从宏观上思考问题话,也就是从最后结果来看待这个问题 就会发现更好的解法 也更加简单和容易理解
火车要行使三次,前两次肯定要放下一些煤,这是毋庸置疑的,假设起点是A,第一次停的位置为B,第二次是C,最后终点为D
AB段行使了5次,BC段行使了3次,CD段行使了一次。
5AB=1000;3BC = 1000;
AB=200,BC=333,最后CD为467
我是这样想的:火车运行时,最好让他满载,起始点记为A
第一步,分三次把煤运送到中间点B
第二步,分两次把煤运送到中间点C
第三步,把煤运送到目的地D
第一步:5*(AB) = 1000;解得AB=200
第二步:3*BC = 1000;解得BC=333.
第三步:AB+BC+CD=1000;解得CD=467
因此,做多运送533吨煤到目的地
【面试题】火车运煤问题相关推荐
- 由火车运煤问题想到的
Technorati 标签: 面试题, 火车运煤 本文版权所有,转载请注明出处和作者联系方式. 作者:孙华明 联系方式: wormsun at gmail.com 今天在酷壳网站上看到一道面试题--火 ...
- 几个程序员面试题:火车运煤问题、赛马问题
火车运煤 这个可能是一个比较经典的智力题了,和以前的那个<赛马问题>很相似,其题目如下: 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000 ...
- 面试题:火车运煤问题
面试题:火车运煤问题 来源:http://www.xymyeah.com/165.html 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手 ...
- 《火车运煤问题》分析
作者:陈太汉 <火车运煤问题>分析 题目内容: 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最多 ...
- 关于火车运煤的一些想法
火车运煤也是个经典的问题了.它的定义如下: 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最多只能装1000吨 ...
- 火车运煤问题 - 增加一个简单算法实现
火车运煤问题 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最多只能装1000吨煤,且其能耗比较大--每一公里 ...
- 也谈《火车运煤》问题
今日在酷壳看到一篇比较经典的<火车运煤>的智力题 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最 ...
- 一道面试题:火车运煤问题
这个可能是一个比较经典的智力题了,和以前的那个<赛马问题>很相似,其题目如下: 你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手 ...
- 经典智力题:火车运煤
题目描写叙述例如以下: 你是一个煤老板.你在矿区开採了3000吨煤,须要运送到市场上去卖,从你的矿区到市场有1000公里.你手里有一列以煤为动力的火车.这个火车一次最多能运1000吨煤,火车每公里消耗 ...
最新文章
- Python给数字前固定位数加零或数字前置保留0
- django查询表记录的十三种方法
- mybatis-逻辑翻页
- 用IBM WebSphere DataStage进行数据整合: 第 1 部分
- Jenkins 安装与使用--实例
- Spring学习总结(19)——Spring概念详解
- java中jsp怎么传递参数_急!Java问题,Java如何获得jsp传递的参数??
- 华为视频会议系统常见问题及解决方法
- a4如何打印双面小册子_怎样将十几几十页的长文件文档打印成A4纸对折的小册子?...
- 单元测试中测试用例的设计方法
- termux安装ubuntu
- 【机器学习】机器学习笔记(吴恩达)
- 施密特触发器——用于正弦波转方波、脉冲波整形
- python中字典的索引_python字典索引
- 转行学习软件测试有前途吗?
- CSDN积极响应网信办“知识社区问答”行为规范管理,共筑健康网络空间
- 电脑开机密码忘记,如何修改电脑密码?
- 玛酷机器人与艾迪瑞特_玛酷机器人,你凭什么这么火?
- SeniorUI0302_Paint基本使用二(文字相关api)
- python猫狗大战游戏下载_带你少走弯路:强烈推荐的TensorFlow快速入门资料和翻译(可下载)...
热门文章
- Pycharm运行时出现Could not load the Qt platform plugin “xcb“问题
- 物联网发展历史、关键技术、面临的挑战
- 粒子群优化算法matlab
- 停车场计费算法 php,《算法与数据结构》课程设计之停车场的收费管理系统
- 玩游戏学c语言(一)EasyX图像库安装
- 批量删除订阅kindle、kindle touch 推送
- 温度梯度作用下水分迁移研究
- springboot配置文件yml读取不到。
- 在Macbook 上云玩LOL
- 洛谷 P3481 [POI2009]PRZ-Algorithm Speedup