好像一个没有任何难度的做法。
直接支配对启动。对于右端点 ,维护 的前缀最小值,可以从大往小扫右端点,队列维护,前面删后面加之类的。
然后对于这个过程中的一个左端点区间 , 是最小值,会在右端点属于 时存在,st 表找到区间内最大值,就形成一个支配对。每当前缀最小值相关区间变化,就加入支配对,前面删除,后面加入,以及在每个右端点的区间最小值对应区间各造成 对支配对。
然后就排序,区间取 min 就完了。
排序是不是可以扔掉,我不会,反正常数小,相信评测机实力。
好像一个没有任何难度的做法。
直接支配对启动。对于右端点 ,维护 的前缀最小值,可以从大往小扫右端点,队列维护,前面删后面加之类的。
然后对于这个过程中的一个左端点区间 , 是最小值,会在右端点属于 时存在,st 表找到区间内最大值,就形成一个支配对。每当前缀最小值相关区间变化,就加入支配对,前面删除,后面加入,以及在每个右端点的区间最小值对应区间各造成 对支配对。
然后就排序,区间取 min 就完了。
排序是不是可以扔掉,我不会,反正常数小,相信评测机实力。