考虑什么时候区间长度=区间mex
把点按照权值从1到n顺序加入。
枚举权值的右端点,线段树维护每一个点的点数-边数。
点数显然很好维护,边数的话,考虑右端点移动以后,新加入一个数字。
看一下和它相邻的两个数字,如果比它小的话,就在线段树上做一次区间减法。
查询的时候,线段树上权值为1的位置即为合法区间。
考虑什么时候区间长度=区间mex
把点按照权值从1到n顺序加入。
枚举权值的右端点,线段树维护每一个点的点数-边数。
点数显然很好维护,边数的话,考虑右端点移动以后,新加入一个数字。
看一下和它相邻的两个数字,如果比它小的话,就在线段树上做一次区间减法。
查询的时候,线段树上权值为1的位置即为合法区间。