二分探索

AtCoder abc305 参加メモ

KYOCERA Programming Contest 2023(AtCoder Beginner Contest 305) - AtCoder B - ABCDEFG #include <bits/stdc++.h> using namespace std; #define REP(i,n) for(int i=0;i<n;i++) #define endl '\n' int main() { char p,q; cin >> p >> q; const int n = 7; vector<int> a = {0,3,1,4,1,5,9}; vector<int> s(n+1); REP(i…</int></int></n;i++)></bits/stdc++.h>

AtCoder abc304 参加メモ

Tokio Marine & Nichido Fire Insurance Programming Contest 2023(AtCoder Beginner Contest 304) - AtCoder B - Subscribers 問題文の通りにやる。 条件がたくさんあるが、よく見ると桁が増えて行く以外は同じ処理だとわかるのでうまくループ処理にすると…

AtCoder abc302 参加メモ

TOYOTA MOTOR CORPORATION Programming Contest 2023#2 (AtCoder Beginner Contest 302) - AtCoder B - Find snuke 8方向全部の処理をそれぞれ記述すると行数が増えてバグらせやすい。 共通部分を考えて行数をなるべく少なくするように心がける。 #include <bits/stdc++.h> </bits/stdc++.h>…

AtCoder abc271 参加メモ

KYOCERA Programming Contest 2022(AtCoder Beginner Contest 271) - AtCoder B - Maintain Multiple Sequences 隣接リストで持つ #include <bits/stdc++.h> using namespace std; #define REP(i,n) for(int i=0;i<(n);i++) #define endl '\n' int main() { int n,q; cin </bits/stdc++.h>…

AtCoder abc260 参加メモ

AtCoder Beginner Contest 260 - AtCoder B - Better Students Are Needed! sortする際に 同点の場合は番号の小さい方を優先する となっていることに気をつける #include <bits/stdc++.h> using namespace std; #define REP(i,n) for(int i=0;i<(n);i++) #define endl '\n' </bits/stdc++.h>…

AtCoder abc255 参加メモ

Aising Programming Contest 2022(AtCoder Beginner Contest 255) - AtCoder B - Light It Up Bにしては難しい #include <bits/stdc++.h> using namespace std; #define REP(i,n) for(int i=0;i<(n);i++) int main() { int n,k; cin >> n >> k; vector<int> a(k),x(n),y(n); RE</int></bits/stdc++.h>…

AtCoder abc250 参加メモ

AtCoder Beginner Contest 250 - AtCoder の参加メモ B - Enlarged Checker Board 適当に実装してif文だらけになるとバグらせやすいので注意する。 #include <bits/stdc++.h> using namespace std; #define REP(i,n) for(int i=0;i<(n);i++) int main() { int n,a,b; cin >></bits/stdc++.h>…

atcoder abc203 D - Pond

問題 D - Pond 解法 二分探索 + 二次元累積和 という典型テクニックを組み合わせて解ける問題だった。 公式解説が詳細なので詳しくはそちらを参照 Editorial - AtCoder Beginner Contest 203(Sponsored by Panasonic) #include <bits/stdc++.h> using namespace std; #def</bits/stdc++.h>…

ZONeエナジー プログラミングコンテスト C - MAD TEAM

問題 C - MAD TEAM 解法 チームの総合力値を二分探索することで解ける問題。 まず総合力は、可能な値=0、不可能な値=1e9+1(取りうる最大値の値+1) とおくことができる。 この範囲で二分探索を行う。 ある値xが成立するかどうかは次のように求めることができ…