青コーダー目指して
競プロで学んだ知識を記録していく
- トポロジカルソート
- BIT(区間和) BIT(gcd) BIT(lazy)区間を+x
BIT(lazy)区間をxに置き換え - BIT(区間最小値) BIT(区間最大値)
- UF木, タグ付きUF木
- 二分木setによる二分探索
- vectorによる二分探索
- 小数点の桁数指定
- aのb乗をEで割った余りを高速計算
- 座標圧縮
- アフィン変換
- 逆元 aで割ることは、aのmod-2乗をかけることと同じ (フェルマーの小定理)
- arctan
- Zalgorithm(文字列照合O(S))
- 一直線上
- ベルマンフォード
- クエリ平方分割(Mo's algorithm)
- 強連結成分分解
- mint
vectorは初期化不要
stringの分割、結合
#include <bits/stdc++.h>
using namespace std;
#ifdef ONLINE_JUDGE
#define debug(...)
#else
#include "competitive/library/debug.cpp"
#endif
#define ll long long
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
}
#include <bits/stdc++.h>
using namespace std;
#ifdef ONLINE_JUDGE
#define debug(...)
#else
#include "competitive/library/debug.cpp"
#endif
#define ll long long
int main(){
}
stoiとかstoll
//string型で読み込み
//let line = readLine()!
//string型で読み込んだものをint型に変換
//let ii = n.map { Int(String($0))! }
//numbers配列に数字の読み込み
//let numbers = readLine()!.split(separator: " ").map { Int($0)! }
swiftで解いてみた
ABC185-A
/ABC182-C
標準入力で参考にしたサイト
pythonで解いてみた
ABC182-D /ARC120-B