アプリをダウンロード
フォルダーを選び、編集前に関連ファイルを読むようアシスタントに依頼します。作業の目的と変更範囲を明確にしてください。
整列済みリストで目標以上の整数が最初に現れる位置を探してください。重複、空入力、末尾後への挿入を試し、未整列または整数以外の入力を二分探索前に拒否してください。
フォルダーを選び、編集前に関連ファイルを読むようアシスタントに依頼します。作業の目的と変更範囲を明確にしてください。
対応するエンドポイントを選択します。利用できるツールや回答品質は、設定したモデルとサーバーに依存します。
変更内容とコマンド出力を確認します。結果を採用する前にプロジェクトの検証を実行してください。生成コードが自動的にテスト済みになるわけではありません。
実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。
def lower_bound(values, target):
if type(values) is not list or type(target) is not int:
raise ValueError("bound.input")
if any(type(v) is not int for v in values):
raise ValueError("bound.member")
if any(a > b for a,b in zip(values, values[1:])):
raise ValueError("bound.order")
lo, hi = 0, len(values)
while lo < hi:
mid = (lo+hi)//2
if values[mid] < target:
lo = mid+1
else:
hi = mid
return lo適用前に確認. 変更内容とコマンド出力を確認します。結果を採用する前にプロジェクトの検証を実行してください。生成コードが自動的にテスト済みになるわけではありません。