题意:给你n从小到大的树,查询一个区间的最长的连续长度
思路:离散化,转换成rmq问题
其实这个题会有三种情况(红色表示你要查询的段)
1:
-1 -1 1 1 1 1 3 3 3 3 10 10 10
就是你要查询的段,刚好是完整的一段就是只有一个值,那么就是b-a+1
2:
-1 -1 1 1 1 1 3 3 3 3 10 10 10
查询区间包含了两段,答案就是这两段最长的一段
3:
-1 -1 1 1 1 1 3 3 3 3 10 10 10
也是最麻烦的一种就是包含了多段,这也是这个题转换的关键
我们可以先把头尾去掉,要用到离散化的结果(见代码),即:1 1 1 1 3 3 3 3然后就转换成了rmq问题