专栏文章

CF2084E Blossom

CF2084E题解参与者 3已保存评论 5

文章操作

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

当前评论
5 条
当前快照
1 份
快照标识符
@mipmknj3
此快照首次捕获于
2025/12/03 14:27
3 个月前
此快照最后确认于
2025/12/03 14:27
3 个月前
查看原文
以下记 mex(l,r)\operatorname{mex}(l,r) 为区间 [l,r][l,r]mex\operatorname{mex}
先考虑没有 1-1 怎么做。容易想到枚举 mex\operatorname{mex},答案即 i=1nil,r[mex(l,r)=i]\sum_{i=1}^ni\sum_{l,r}[\operatorname{mex}(l,r)=i]。第二个求和号可以根据 0i10\sim i-1 的数的最小下标 mnmn 和最大下标 mxmxii 的下标 pp 得出,只需分讨 pp 与区间 [mn,mx][mn,mx] 的相对位置即可,总复杂度 O(n)O(n)
接下来考虑拓展到有 1-1 的情况。贡献显然与区间内 1-1 的个数 c(l,r)c(l,r) 有关,而且数据范围允许我们枚举两个东西,那么自然可以再枚举 c(l,r)c(l,r)。记总共有 CC1-10i10\sim i-1 中总共有 wiw_i 个数需要填,则答案为:
i=1nij=wiC(jwi)wi!(Cwi)!l,r[mex(l,r)=ic(l,r)=j]\sum_{i=1}^n i\sum_{j=w_i}^C\binom{j}{w_i}w_i!(C-w_i)!\sum_{l,r}[\operatorname{mex}(l,r)=i\land c(l,r)=j]
然后我们发现接下来就不太会做了,其原因在于 mex(l,r)=i\operatorname{mex}(l,r)=i 这个限制太强,根据上文没有 1-1 的做法,甚至需要分讨,不好刻画。
观察式子结构,发现可以将其转化为
i=1nj=wiC(jwi)wi!(Cwi)!l,r[mex(l,r)ic(l,r)=j]\sum_{i=1}^n\sum_{j=w_i}^C\binom{j}{w_i}w_i!(C-w_i)!\sum_{l,r}[\operatorname{mex}(l,r)\ge i\land c(l,r)=j]
这样看起来就好做很多,因为 mex(l,r)i\operatorname{mex}(l,r)\ge i 这个条件只要求 [l,r][l,r] 包含 0i10\sim i-1 出现的区间 [mni,mxi][mn_i,mx_i]。设最后一个求和号的结果为 fi,jf_{i,j},那么我们只需求出 ff 即可 O(n2)O(n^2) 计算答案。
至于计算 ff,我们考虑对每个区间算出它的贡献。具体地,由于 [mni,mxi][mn_i,mx_i] 随着 ii 的增加而逐渐扩大,那么 [l,r][l,r] 可贡献到的 f,cf_{*,c} 第一维就是一段前缀。考虑 ll 固定时,随着 rr 的增加,[l,r][l,r] 能贡献到的位置单调不减,那么我们双指针维护 [l,r][l,r] 能贡献到的右端点,前缀加用差分处理即可。
总复杂度 O(n2)O(n^2)

评论

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

正在加载评论...