Function nekolib::algo::hilbert_mo_::hilbert_mo
source · pub fn hilbert_mo<S>(
slice: S,
q: Vec<(Range<usize>, S::Salt)>
) -> impl Iterator<Item = S::Hashed>where
S: ElasticSlice + ExpandFront + ExpandBack + ShrinkFront + ShrinkBack + SliceHash,
S::Hashed: Clone,
Expand description
Hilbert curve に基づく Mo’s algorithm。
See https://codeforces.com/blog/entry/61203。 Range Set Query に投げたら TLE したのでつらい。