Uses

Desk (Private)

Desk (Private) desk

Desk (Work)

daily

Gaming PC

Game

PC

League of Legends原神MinecraftOWテラリアPath of Exile 2モンハンワールドモンハンワイルズgoghその他のSteamゲー

スマホ

グランブルーファンタジーパズル&ドラゴンズクラッシュ・オブ・クランGod Fieldユニゾンリーグパニグレスタレアークナイツヘイデイポーカーチェイスウマ娘東宝LostWordペンギンの島みんはやソセレジェ荒野行動クラロワモンスト

Switch

大乱闘スマッシュブラザーズモンハンRISE/SUNBREAKStardew Valleyスプラトゥーンオーバークック2

調整中 Algorithm

探索・走査テクニック (苦手で好き)

  • 線形探索
  • 二分探索
  • 三分探索
  • 尺取り法
  • 累積和
  • 二次元累積和
  • 差分配列
  • 二次元差分配列
  • 座標圧縮
  • imos法
  • bit全探索
  • 枝刈り全探索
  • 反復深化深さ優先探索
  • 双方向BFS
  • メモ化再帰

文字列 (得意で好き)

  • KMP法
  • ローリングハッシュ
  • Z-function
  • Manacher法
  • Aho-Corasick法
  • 接尾辞配列
  • 最長共通接頭辞配列
  • 接尾辞オートマトン
  • Eertree
  • Boyer-Moore法
  • 文字列のハッシュ
  • 最小回転
  • Lyndon分解

ソート (無)

  • バブルソート
  • 選択ソート
  • 挿入ソート
  • マージソート
  • クイックソート
  • ヒープソート
  • 計数ソート
  • 基数ソート
  • バケットソート
  • 転倒数のカウント
  • シェルソート
  • イントロソート
  • TimSort

グラフ (得意で好き)

  • 幅優先探索 (BFS)
  • 深さ優先探索 (DFS)
  • ダイクストラ法
  • ベルマン-フォード法
  • フロイド-ワーシャル法
  • クラスカル法
  • プリム法
  • トポロジカルソート
  • 0-1 BFS
  • 強連結成分分解 (SCC / Kosaraju法)
  • 強連結成分分解 (Tarjan法)
  • 二重連結成分分解 / 橋・関節点検出
  • 最小共通祖先 (LCA)
  • 木の直径
  • オイラーツアー
  • 最大流 (Ford-Fulkerson法)
  • 最大流 (Dinic法)
  • 最小費用流
  • 二部グラフ判定
  • 二部マッチング (ハンガリアン法)
  • オイラー路・ハミルトン路
  • HL分解
  • 重心分解
  • 木の同型判定
  • 最小全域有向木 (朱・劉・エドモンズ法)
  • グラフの彩色問題(貪欲)
  • 多点源BFS
  • ジョンソン法
  • グリッドグラフのBFS/DFS
  • 連結成分の列挙

データ構造 (苦手だが好き)

  • 配列 / 連結リスト
  • スタック / キュー
  • 双方向キュー (Deque)
  • ヒープ / 優先度付きキュー
  • 二分探索木
  • 平衡二分探索木 (std::set / multiset)
  • Union-Find
  • セグメント木
  • 遅延セグメント木
  • BIT (Fenwick木)
  • 2D BIT (二次元Fenwick木)
  • 平方分割
  • スパーステーブル (Sparse Table)
  • モノトニックスタック
  • モノトニックキュー(スライド最小値)
  • トライ木 (Trie)
  • 永続データ構造(永続セグメント木)
  • 二分ヒープ(手動実装)
  • 左辺木 (Leftist Heap) / マージ可能ヒープ
  • Skew Heap
  • リンクカットツリー (LCT)
  • 平方分割
  • Mo's Algorithm
  • Mo's Algorithm with Rollback
  • フラクショナルカスケーディング
  • van Emde Boas木
  • ハッシュマップ

数学・整数論 (苦手で好き)

  • GCD / LCM
  • 素数判定
  • エラトステネスの篩
  • 線形篩
  • 繰り返し二乗法
  • モジュラー逆元
  • 中国剰余定理 (CRT)
  • 拡張ユークリッド互除法
  • フェルマーの小定理
  • オイラーのφ関数(トーシェント関数)
  • メビウス関数・包除原理
  • 二項係数 / パスカルの三角形
  • 行列積 / 行列累乗
  • ガウスの消去法(mod・XOR)
  • FFT / NTT(高速フーリエ変換)
  • ミラー-ラビン素数判定
  • 素因数分解(試し割り・Pollard's rho)
  • Pollard's rho(大数素因数分解)
  • 二項係数 mod p(Lucas定理)
  • 離散対数問題 (Baby-step Giant-step)
  • 原始根
  • Stern-Brocot木・メディアント
  • 連分数展開
  • シンプソン法(数値積分)
  • 格子点の数え上げ(Pick定理)
  • 組み合わせ(順列・重複組み合わせ)
  • スターリング数
  • ベル数・分割数
  • FPS(形式的べき級数)

動的計画法 (苦手で嫌いで逃げてる)

  • コイン問題
  • ナップサック問題 (0-1)
  • ナップサック問題 (個数無制限)
  • ナップサック問題 (個数制限付き)
  • 最長共通部分列 (LCS)
  • 最長増加部分列 (LIS)
  • 区間DP
  • 桁DP
  • 木DP
  • ビットDP (部分集合DP)
  • 確率・期待値DP
  • 行列累乗DP
  • Convex Hull Trick (CHT)
  • 分割統治最適化DP
  • スライド最小値DP
  • SOS DP(Sum over Subsets)
  • プロファイルDP(折れ線DP)
  • 接続DP
  • ダブリング(Sparse Table・LCA用)
  • Aliens DP(λ最適化)
  • Knuth最適化
  • 編集距離DP
  • 最適二分探索木DP
  • 巡回セールスマン問題 (TSP / ビットDP)