二分探索

atcoder ABC312 C - Invisible Handの勉強

atcoder.jp・参考: ABC312 C問題(Invisible Hand)を解く - プロひろ・説明:二分探索で解く。okとngを二分探索で更新していきokが最終結果になる。( 二分探索アルゴリズムを一般化 〜 めぐる式二分探索法のススメ 〜 - Qiita を参照) import bisect n,m=m…

atcoder ABC310 C - Reversibleの解答

atcoder.jp・考え方:二分探索で解ける。まず、setにして重複を消す。次に反転文字列が文字列全体にないか、二分探索してあったら答えを-1する。 import bisect n=int(input()) s=[] for _ in range(n): s.append(input()) s=list(set(s)) #setで重複を消す …

AtCoder Beginner Contest 305 ABC D - Sleep Logの勉強

atcoder.jp・参考: Submission #42147989 - KYOCERA Programming Contest 2023(AtCoder Beginner Contest 305) ・考え方:前処理をしてクエリの中の処理を軽くする。二分探索を使うのでスライスにおけるAのi番目までの睡眠時間を前処理として行えば良い。…

AtCoder Beginner Contest 304 D - A Piece of Cakeの勉強

・問題: atcoder.jp ・参考: https://atcoder.jp/contests/abc304/submissions/41948730 https://atcoder.jp/contests/abc304/submissions/41961121 ・説明 a,bの線でケーキを切るのでa,bの格子(切り分けられたケーキ)の中でいちごの位置を二分探索してそ…

atcoder (abc77 C)Snuke Festival のpythonによる解答

問題 atcoder.jp・前提:この問題は二分探索を使う。・考え方:Bを1つ決めてそれをB[i]とする。Aの中のB[i]より小さい値の数をbiaとする。Cの中のB[i]より大きい値の数をbicとする。biaとbicを掛け算したものが答えとなりあとはiをforで回せば良い。・例:A=…

第8回日本情報オリンピック 本選(過去問)B - ピザの勉強

atcoder.jpこの問題は二分探索を使って解けます。コードはpythonでライブラリのbisectを使って書きました。・プログラムの流れ:店舗の位置に本店の位置(0とD)を加えた。その後、配達先の位置を二分探索して近い店舗2つのうち近い方からの距離をdとした。あ…

AOJ 二分探索のPythonによる解答 3パターン

onlinejudge.u-aizu.ac.jpこの問題を3つの方法、二分探索を自分で実装する 、if T[i] in S 、pythonのライブラリbisectを使って解答してみます。・1つ目 二分探索を自分で実装するやり方。これは実際に二分探索を自分で関数として作るやり方です。二分探索に…