如果你回滚莫队TLE
查看原帖
如果你回滚莫队TLE
208967
Hasinon楼主2022/3/18 20:40

快读快输 int 之类不说了。

  • 把莫队的分块改为按(询问左边界的)值域分块。
  • 用原数组的下标为下标建链表(方便计算答案)
  • 显然,每次处理完块内的询问后,链表里会剩下一些东西。
    我们记录剩下东西的左右边界,然后对于下一个块的初始化,我们先把右边界的右边的数重新加回去,再把左边界 ++ 到,当前块里,所有询问的左边界,的最小值 。

感谢 @Figo17 Ost

2022/3/18 20:40
加载中...