第十三次

被 翻 了

A

xt 最后一步肯定选四角,所以 fengwu 肯定选与四角距离最大值最小的点,

所以 xt 第一步肯定占掉与四角距离最大值前 $k$ 小的点。

B

奇妙做法,差分优化 DP。令排列 $p$ 的价值为 $f(n,p,s)$。

设 $f_{i,j}$ 表示长度为 $i$,价值为 $j$ 的排列个数,考虑往后填一个数,则对 $k\le i+1$,有转移:

$$ \begin{cases} f_{i+1,\min(j,k)}\gets f_{i+1,\min(j,k)}+f_{i,j}&s_i=0\\ f_{i+1,\max(j+1,k)}\gets f_{i+1,\max(j+1,k)}+f_{i,j}&s_i=1 \end{cases} $$

(二式 $j$ 要加一的原因是,$\max(j+1,k)$ 取到 $j+1$ 当且仅当 $k\le j$,而原排列中 $\ge k$ 的数都要加一,所以 $j$ 要加一)

场上只想到这一步……然而可以把 $\max,\min$ 分讨掉,对 $k\le j$ 和 $k>j$ 分别转移,

然后发现 $f_{i,j}$ 可以转移到 $f_{i+1}$ 的一个区间,在 $f_{i+1}$ 上差分做区间加即可。

C

结论:设点集 $S$ 的直径端点为 $x_1,y_1$,点集 $T$ 的直径端点为 $x_2,y_2$,则 $S\cup T$ 的直径端点一定 $\subseteqq\{x_1,y_1,x_2,y_2\}$。

线段树维护区间直径端点即可。

posted @ 2023-08-03 15:31  Jijidawang  阅读(10)  评论(0)    收藏  举报  来源