ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

MX Round 26 解题报告

MX Round 26 解题报告

T1

场上

没有头绪,打了挂大分的 \(O(n^2)\) 暴力。

T2

场上

没有头绪,打了挂打分的 \(O(n^2\log n)\) 暴力。

T3

切了。

一个观察:操作二只会往前走。

状态定义为“到每一个位置的期望花费”,我只想得到 \(O(n^3)\) 的高斯消元做法,不是很有前途。

于是定义 \(f_i\) 表示由 \(i\) 走到 \(i+1\) 的期望花费。如果此时有 \(k\) 个合法的二操作,那么简单地,可以列出转移方程:

\[f_i=\sum_{x}^{\infty}(\dfrac{k}{k+1})^x\times(\dfrac{1}{k}\sum_{j=1}^k(\sum_{p=i-a_j}^{i-1}f_p+b_j)) \]

首先,后面那东西自然可以前缀和优化掉。然后感觉前面的部分是收敛的,打表观察,发现收敛于 \(k\)。(实际上这个是几何级数)定义 \(d_i=\sum_{1\le j \le i} f_i\),于是有转移:

\[f_i=\sum_{j=1}^kd_{i-1}-d_{i-a_j-1}+b_j \]

时间复杂度为 \(O(n^2)\),需要精细实现。

返回列表