Sparse table (2D)
(Mylib/DataStructure/SparseTable/sparse_table_2d.cpp)
Operations
-
SparseTable2D(v[n][m])
- Time complexity $O(nm\log n \log m)$
-
get(int r1, int c1, int r2, int c2)
-
[r1, r2), [c1, c2)
をSemilattice::op
でfoldする。
- Time complexity $O(1)$
Requirements
-
Semilattice
は冪等性・可換性・結合性を満たすop
を持つ。
-
max
, min
, gcd
, lcm
, and
, or
など
Notes
Problems
References
Code
Back to top page