依次加入 中每个元素,维护最大的 使得 为好的二元组。
当前往 末尾加入一个 ,那么 的变化方式为:
-
如果 ,设 为 后面第一个 的位置,则令 。
-
如果 ,设 为 前面第一个 的位置,则令 。
预处理每个点往前第一个比它小的以及往后第一个比他大的位置,连成两棵树。在这个结构上 dp 即可做到 。
依次加入 中每个元素,维护最大的 使得 为好的二元组。
当前往 末尾加入一个 ,那么 的变化方式为:
如果 ,设 为 后面第一个 的位置,则令 。
如果 ,设 为 前面第一个 的位置,则令 。
预处理每个点往前第一个比它小的以及往后第一个比他大的位置,连成两棵树。在这个结构上 dp 即可做到 。