src/DataStructure/SparseTable.hpp
概要
冪等性を持つモノイドについて、区間畳み込みを高速に計算する。
構築O(n log n), クエリO(1)
アルゴリズム
構築時には各点から始まるダブリングを計算。
クエリ時には、始点と終点からそれぞれ最も長い計算済みの区間を持ってきて(これはMSBから求まる)、2つの合成を求める。
2つの区間にはかぶりが生じるが、冪等性を仮定していることから正しい答えが求まることが保証される。
Verified with
Code
Back to top page