原题:【2.2.12】你面前是一堵朝两个方向无限延伸的墙。墙上有一扇门,但你并不知道门离你有多远,也不知道门位于哪个方向。你只有在走到门门前才能看到它。假设从当前位置到门要走n(事先并不知道n的大小)步,请设计一个算法,使你最多走O(n)步就能遇到门。
设折返次数 k = 0, 1, 2 ......
关键是只需要路过门即可,不需要站在门前。
建立一个整数轴(最优解应该是建立实数轴,之后讨论),出发点为原点。
路线为
因为
原题:【2.2.12】你面前是一堵朝两个方向无限延伸的墙。墙上有一扇门,但你并不知道门离你有多远,也不知道门位于哪个方向。你只有在走到门门前才能看到它。假设从当前位置到门要走n(事先并不知道n的大小)步,请设计一个算法,使你最多走O(n)步就能遇到门。
设折返次数 k = 0, 1, 2 ......
关键是只需要路过门即可,不需要站在门前。
建立一个整数轴(最优解应该是建立实数轴,之后讨论),出发点为原点。
路线为
因为