线段树分治总结

纵然是瞬间 提交于 2020-02-12 04:38:47

毕竟学了1天…纪念一下吧

  1. 首先一定要对“时间”很清晰,这里的"时间"可能并不是实际的时间,输入中一个删除操作可能不是真的删除,可以理解为操作持续时间而避免删除
  2. CDQCDQ 分治的区别在于 CDQCDQ 经典问题是偏序问题,问题信息一般是计数类或者有可减性,而线段树分治处理其他类型的
  3. 询问的类型有两种,一种是带参数询问,即给你个 xx 问对它进行某些操作后取得最值,还有一种是跟图/并查集相关的(可能因为我做过的题比较少),前者一般根据操作特点能做到均摊 O(nO(n) 或者单次 O(logn)O(logn) ,后者一般倾向于集中处理(因为查询和查询之间没什么区别)
  4. 查询和修改而言,我做过的有单点查询区间修改,单点修改区间查询两种类型,前者将修改分成 lognlogn 段后插入在这几段,然后单点询问时候计算经过节点对询问影响,后者考虑修改标记永久化,只管询问的 lognlogn 个节点即可

总的而言,线段树分治本身属于套路类的内容,所以本身并不怎么有技巧性

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!