C/C++の宿題を片付けます 75代目
■ このスレッドは過去ログ倉庫に格納されています
0188デフォルトの名無しさん
2006/10/22(日) 18:32:09実装は面倒なのでアイデアだけ.n ≦ 1 ならこれで動くはず.
・二分探索を行う.ただし端点の要素は三つくらいの要素の
中間値でも取って昇順条件を外れた要素を踏まないようにする.
・二分探索で範囲を絞りきったときの状態は
1. 目的の値が見つかった → 終了.
2. 昇順条件には従うが目的の値は見つからない → 存在しない.
3. 昇順条件に反する値が見つかった → その値をキーにして再度二分探索.
一般の L, n については考えてないけど,O(n log L) くらいがある気はする.
■ このスレッドは過去ログ倉庫に格納されています