06/03/10 23:12:33
学校の宿題なのですが、
廊下にたっていて、向かい側の壁にはたくさんの開くドア又は開かないドアA,B,C。。。。が無限にあって、
それを開くかどうか確認したい。
スタートはAとーAの間にいる。
。。。|D|C|B|A|-A|-B|ーC|-D|。。。っとドアが続く
最初に地点から一番近い、開くドアを見つけたいが、動く距離をxとして、
距離の総和がO(x)ペースになるように探したい。
例えば、A,-A,B,-B,C,ーCの順番で探していくと、
動く距離が、1、2、3、4、5,...nとなり、距離の総和は1/2*(n)*(n-1)となり、
O(X^2)のペースになるから駄目である。
っていう問題なのですが、何か良い探し法、アルゴリズムありますかね?