选择方法的算法

时间:2013-11-30 11:40:17

标签: algorithm

我有一个有意思的问题要与你分享。 让我们假设你驾驶一辆汽车,你偶然发现了一种可能有三种选择方式的十字路口。 你需要燃气,你需要找一个加油站,但其中一个方向只有一个加油站。 任务是找到一个寻找加油站的算法。但是,假设x是加油站和十字路口之间的距离,则您驾驶的总距离必须是x的LINEAR函数。

这几个小时以来我一直在思考,有什么想法吗? :)

编辑:开头你不知道x!

1 个答案:

答案 0 :(得分:6)

向一个方向行驶1公里,然后返回。然后沿另一个方向行驶2公里然后返回。然后4,8,16等继续,直到找到加油站。

如果加油站在2 ^ n和2 ^(n + 1)km之间,你将开车总数不超过

S = 2 * (1+2+4+...+2^(n+3)). 

所以,S < 2 * 2^(n+4) < 32 * 2^n < 32x(因为x > 2^n)。所以将会驱动不到32x km。