赛马问题

1. 赛马问题:

  一共有25匹马,有一个赛场,赛场有5个赛道,就是说最多同时可以有5匹马一起比赛。假设每匹马都跑的很稳定,不用任何其他工具,只通过马与马之间的比赛,试问,最少得比多少场才能知道跑得最快的5匹马?(不能使用撞大运的算法

解析:http://hxraid.iteye.com/blog/662643

2. 火车运煤问题:

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

解析:

因为是3000吨的煤总量,所以将路线分割为3段,也就是中间设置两个节点。三段路程分别是x/y/z。
原因如下:
让3000吨货物到第一个节点时能留下2000吨煤,
让2000吨货物到第二个节点时能留下1000吨煤,
这样最后火车可以满载1000吨煤走剩下的最后一段路线,达到运载货物最多的目的。
(总之,每个节点都要有1000整数的煤,以达到最大化,避免零头浪费)
第1个节点公式
公式 3000-5x=2000,得出x=200
第2个节点公式
公式 2000-3y=1000,得出y=333.3循环
则 z=1000-x-y=466.6循环
最后剩余1000-z=533.3循环吨煤
如果是4000吨煤,每次最大运输也是1000吨煤,则分4段路程,设3个节点
总的想法是让火车每次往前运煤都尽量处于满载状态

3. 飞机加油问题:

  3架飞机,5架次

4. 两个鸡蛋问题:

楼层扔鸡蛋问题

Google面试题:扔鸡蛋问题

Problem of Two Eggs

100层楼扔两个鸡蛋的问题

5. 过桥问题和倒水问题:

http://blog.csdn.net/morewindows/article/details/7481851

6. 随机函数的面试题

原文地址:https://www.cnblogs.com/gattaca/p/4662047.html