专栏文章

题解:P14636 [NOIP2025] 清仓甩卖 / sale(民间数据)

P14636题解参与者 4已保存评论 4

文章操作

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

当前评论
1 条
当前快照
1 份
快照标识符
@mimyhm7d
此快照首次捕获于
2025/12/01 17:37
3 个月前
此快照最后确认于
2025/12/01 17:37
3 个月前
查看原文
upd:修改了一处笔误。
注:本题解中的大小关系,前后顺序都是以性价比降序排序为基准。
考场上没调出来。倒闭。
正难则反。我们会发现不合法的情况一定是前面的一个 11 卡住了后面的一个 22。设 22 的位置是 ii,那个 11 的取值范围就是 aia_iai2\frac{a_i}{2},于是可以在这个范围里枚举 jj(那个 11 的位置)。
注意到不合法的情况一定是后面不存在一个 11(设它的位置是 kk)满足 aj+akaia_j + a_k \ge a_i,于是 aja_jaiaja_i - a_j 范围里的数的 ww 必须是 22,而 aiaja_i - a_j11 范围里 1122 都行。
然后因为卡住的原因一定是因为遇到这个 ii 时的金币数只有 11 了。所以可以推得 p>jw=m2\sum_{p>j}w = m-2,于是问题变为使性价比最大的 j1j - 1 个数的 ww 的和为 m2m-2
xx11ai1a_i - 1 中有多少个 22nxtnxt 为后面第一个可以填 11 的位置(可以用双指针维护),利用范德蒙德卷积可推得:
ans=(i1x)(jim2(i1)x)×2nnxt+1=2nnxt+1(j1mi1)ans = \sum \binom{i - 1}{x}\binom{j - i}{m - 2 - (i -1) - x} \times 2^{n - nxt +1} = 2^{n - nxt + 1} \binom{j - 1}{m - i - 1}
只需枚举 i,ji, j,并用双指针维护 nxtnxt,所以复杂度是 n2n^2 的。
最后,注意我们求得是反面,需要的是正面。

评论

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

正在加载评论...