专栏文章

题解:CF2165F Arctic Acquisition

CF2165F题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@min2qpr6
此快照首次捕获于
2025/12/01 19:36
3 个月前
此快照最后确认于
2025/12/01 19:36
3 个月前
查看原文
显然 [l,r][l,r] 合法一定有 [l1,r],[l,r+1][l-1,r],[l,r+1] 合法,这样求出来每个 ll 最小的 rr 合法即可,答案为 nfi+1\sum n-f_i+1
注意到子序列 2143521435 显然要拆开。固定 22 的位置 ii,一定是找下一个 aj<ai,j>ia_j<a_i,j>i 作为 11。放到坐标系 (i,ai)(i,a_i) 上,转化为 x[j+1,n],y[ai+1,n]x\in[j+1,n],y\in[a_i+1,n] 的部分中的一个 213213 子序列,范围即为一个 2-side 矩形。
考虑枚举这个子序列中 11 的位置 pp,注意枚举 22 的话这里就会有很多 (2,1,3)(2,1,3),考虑枚举 33 的位置 qq,如果并非 [p+1,n][p+1,n] 中的前缀 max\max 那么就会被前面那个点支配掉。令 [p+1,n][p+1,n] 中所有前缀 max\max 并且 >ap>a_p 的位置分别为 r1,r2,r3,r_1,r_2,r_3,\cdots。如果最终取的是 r2,r3r_2,r_3 之类,那么取的 22 的值一定 >ar1>a_{r_1},那么 pp 可以移动到 r1r_1,并且范围更大,因此只需要考虑 ar1a_{r_1}33。对于 r1r_1 显然可以用单调栈找。此时找前缀最后一个落在 [ap,ar1][a_p,a_{r_1}] 的点作为 22 即可。综上,只有 O(n)\mathcal O(n) 个有效的 213213 子序列。
转化为:nn 个带点权的点,查询的是 nn 个 2-side 矩形内部点权 min\min。容易扫描线解决,时间复杂度 O(nlogn)\mathcal O(n\log n)

评论

0 条评论,欢迎与作者交流。

正在加载评论...