文章目录

题解:CF675E Trains and Statistic

由 SunJude 发布

首先考虑,对于点 $i$,如果要到达一个一步到不了的点,应该怎么走。显然,应该从 $i$ 到一个中转点,再往后走。考虑中转点应该怎么取,贪心的,我们让中转点取 $[i + 1, a_i]$ 中 $a_p$ 最大的点 $p$,因为 $p$ 的右端点最靠右,可以到达更多的点。

考虑令 $f_i = \sum_{j = i + 1} ^ {n} \rho_{i, j}$,答案就是 $\sum f_i$。发现一个 $i$ 是唯一对应了一个 $p$ 的,于是考虑用 $f_p$ 推出 $f_i$。

画个图发现答案分成了三段。

  • $[i + 1, p]$:这一段是 $i$ 能花一步到达,而 $p$ 到达不了的,所以每个点贡献为 $1$。
  • $[p + 1, a_i]$:这一段是 $i$ 和 $p$ 都能花一步到达的,贡献为 $0$。
  • $[a_i + 1, n]$:这一段是 $i$ 要先花一步到达 $p$,然后再到达的,所以每个点贡献为 $1$。

所以 $f_i = f_p + p - i + n - a_i$。用 ST 表维护区间最值就做完了。


暂无评论

发表评论