析合树
A1847225889
在一次次翻车中吸取教训……
展开
-
2017-2018 ACM-ICPC, Central Europe Regional Contest (CERC 17) I Intrinsic Interval
题目给你一个排列,定义一个连续段为一个子区间,其中包含的数是连续的。对于一个子区间,求出包含它的本源连续段,即包含它的最小的连续段。需要处理若干个询问。n,m≤105n,m\le 10^5n,m≤105正解一眼看下去这不就是析合树吗?于是调了半天析合树,最终艰难地通过了。当然有些比较阳间的做法:可以发现对于询问的区间[L,R][L,R][L,R],找到最小的rrr使得存在lll,[L,R]⊆[l,r][L,R]\subseteq [l,r][L,R]⊆[l,r]并且[l,r][l,r][l原创 2020-10-15 18:40:43 · 292 阅读 · 0 评论 -
析合树
析合树是一种解决连续段问题的数据结构。比如这样的一个问题:给你一个111到nnn的排列,然后有一堆询问,每次询问区间[l,r][l,r][l,r],问包含[l,r][l,r][l,r]的最小连续段是什么。也就是这题所谓的连续段,就是满足maxl..r−minl..r+1=r−l+1max_{l..r}-min_{l..r}+1=r-l+1maxl..r−minl..r+1=r−l+1的连...原创 2019-09-12 16:54:26 · 500 阅读 · 0 评论