Misc Records ep.1

Misc 丢一些神秘的杂题。

1.【数据删除】

\(n\) 个球放进 \(m\) 个盒子,求所有盒子的最大期望球数。
\(n\le 2000\)\(m\le 10^9\)

期望可以视为总和除上 \(m^n\)
\(f_k\) 表示 \([\max=k]\) 的方案数,那么问题等价于 \(\sum kf_k\)
试着容斥成 \([\max \ge k]\),记这个方案数是 \(g_k\),会发现对于一个 \([\max=k]\) 的方案,他刚好被 \(\sum g_k\) 算了 \(k\) 次。
\([\max\ge k]\) 仍然不好算,再换成 \([\max <k]\),即为 \(h_k\),那么答案就是 \(\sum m^n-h_k\)
对此 DP,记 \(p_{i,j}\)\(n=i\)\(m=j\) 的方案数,枚举 \(k\) 做若干次 DP。
每次 DP 用总方案减掉不合法的方案,也就是:

\[p_{i,j}=jp_{i-1,j}-j\binom{i-1}{k}p_{i-k-1,j-1} \]

直接做是 \(O(n^3)\) 的,但是注意到转移式里面有 \(i-k-1,j-1\),所以其实 \(j\) 每次减一都会使 \(i\)\(k\),于是合法的状态数锐减到 \(O(n\ln n)\),直接 DP 即可做到 \(O(n^2 \ln n)\)

2.【数据删除】

平面上有 \(m+t+q\) 个点,从中选出一个大小为 \(m+t\) 的子集,要求包括 \(t\) 个特定点,求他们两两之间曼哈顿距离的最大值。
\(m\le 4\)\(1\le q\le 2\times 10^4\)\(0\le t\le 20\)

首先对于 \(t\) 个点内部可以暴力处理出答案。
接下来对于 \(m+q\) 个点,可以先给他们 set 出一个权值。
于是问题也就变成了每个待选点有一个权值,尝试维护他们内部的答案。
多个点曼哈顿距离的一种求法是,直接将坐标排序,然后就可以计算出所有点的贡献系数。
既然排序,其实不如考虑枚举坐标的排列,由排序不等式,很明显取所有排列的最大值即可解决问题。
于是直接 DP,令 \(f_{i,S_1,S_2}\) 表示已经考虑了前 \(i\) 个点,剩下的 \(S_1,S_2\),分别是 \(m\) 个数占据的 \(x_i,y_i\) 坐标的相对位置,直接写就可以做到 \(O(qm^24^m)\),实际上状态不会有那么多,因为 \(\text{ppc}(S_1)=\text{ppc}(S_2)\)

3. 【USsR #1】彩色括号

尝试先做一些必要操作。
对于一个合法括号序列:

  • ( ) 的个数相等。
  • 前缀和非负。

那么对于第一个条件,我们可以转化为三种颜色的括号均满足个数相等。
对于第二个条件,我们可以转化为挖掉一种颜色的括号后,前缀和非负。
为了满足第一个条件,可以优先贪心,对于不满足的颜色,我们可以改最前面的 ) 或者最后面的 ( 来解决问题。
剩余的操作会形如:将某个颜色的第一个 ) 和最后一个 ( 交换。
假定每个颜色做了 \(x_i\) 次,则目标便是最小化 \(x_1+x_2+x_3\),考虑他们对应的限制。
枚举两个存在的颜色记为 \(1,2\),那么我们对于一个前缀 \(j\) 有:

\[s_j+2\min(x_1,a_{1,j},b_{1,j})+2\min(x_2,a_{2,j},b_{2,j})\ge 0 \]

其中 \(a_{1,j}\) 表示前缀 \(j\) 颜色为 \(1\)) 数量,\(b_{1,j}\) 表示前缀 \(j\) 颜色为 \(1\)( 数量,他们约束了最多改变的量。
\(\min\) 的不等式,可以改写为若干个同时成立的不等式组,于是有

\[\begin{cases} s_j+2x_1+2x_2\ge 0\\ s_j+2\min(a_{1,j},b_{1,j})+2x_2\ge 0\\ s_j+2x_1+2\min(a_{2,j},b_{2,j})\ge 0 \end{cases} \]

对这些不等式组取并后大力枚举一维即可。

posted @ 2025-08-04 16:17  时一月  阅读(56)  评论(0)    收藏  举报