专栏文章

题解:P14379 【MX-S9-T2】「LAOI-16」摩天大楼

P14379题解参与者 5已保存评论 5

文章操作

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

当前评论
5 条
当前快照
1 份
快照标识符
@minet3z1
此快照首次捕获于
2025/12/02 01:14
3 个月前
此快照最后确认于
2025/12/02 01:14
3 个月前
查看原文
出题人题解。
约定 mex\operatorname{mex} 的定义域为正整数集合,即 mex{}=1\operatorname{mex}\{\emptyset\}=1
形式化题意:单点修,每次求 l=1nr=l+1nf(l,r)\displaystyle\sum_{l=1}^{n}\sum_{r=l+1}^{n} f(l,r),其中 f(l,r)=1f(l,r)=1 当且仅当存在 k[l,r)Zk\in [l,r)\cap \Z 使得 mexi=lkaimexi=k+1rai\operatorname{mex}_{i=l}^{k}a_i\not=\operatorname{mex}_{i=k+1}^{r}a_i,否则 f(l,r)=0f(l,r)=0
对子区间 [l,r](1l<rn)[l,r](1\le l<r\le n) 内的数进行分讨:
  1. 不存在 11。无论区间断在哪里,都满足左区间 mex\operatorname{mex} 等于右区间 mex\operatorname{mex},故 f(l,r)=0f(l,r)=0
  2. 在下标 l,rl,r 处为 11。若 [l+1,r1][l + 1, r - 1] 不存在 22,则 f(l,r)=0f(l,r)=0
使得 f(l,r)=0f(l,r)=0 的情况只有以上两种。
容易得到一段长为 lenlen 的无 11 序列的贡献是 len×(len1)2\frac{len\times(len-1)}{2},一段含有 cntcnt11 的无 22 序列的贡献是 cnt×(cnt1)2\frac{cnt\times(cnt-1)}{2}
题目要求的是 n×(n1)2\frac{n\times(n-1)}{2} 减去所有极长无 11 和无 22 段的贡献。每次修改后求个数是 O(n)\mathcal{O}(n) 的,容易做到 O(nq)\mathcal{O}(nq)
线段树维护区间左侧、右侧极长非 11 段长度,区间左侧、右侧极长非 22 段中 11 的个数即可做到 O(qlogn)\mathcal{O}(q\log n),同样可以使用 set 实现。

评论

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

正在加载评论...