【咕】2025 Beijing WC (CNUHS) B
2025/02/05 (贪心 凸性 拟阵)
P2970 [USACO09DEC] Selfish Grazing S,*橙。
$n\le5\times10^4$。
按右端点从小到大排序,依次考虑每一个区间,能选则选。复杂度
Code.
UVA10020 Minimal coverage。
实现来自 AzusidNya,拜谢。
$n\le10^5$。
按左端点从小到大排序,每次选出最长前缀。具体实现相当于每次求
Code.
* 区间选择模型 III。
$n,m\le10^6$。
去掉所有包含其他区间的区间。区间按左端点从小到大排序。从小到大依次考虑每一个点,能不选则不选。复杂度
* 前缀匹配模型。
$n\le10^6$。
以任意顺序考虑左侧第
* 区间匹配模型。
$n,m\le10^6$。
从小到大考虑右侧每一个点,选择左侧能与之匹配的点中
* 二维前缀匹配模型。
$n\le10^6$。
按
* 带点权前缀匹配模型。
$n\le10^6$。
按点权从大到小考虑右侧每一个点,选择左侧能与之匹配的
邻项交换模型。
给定
n 个 01 序列a_i ,将他们以任意顺序拼接,最小化逆序对数。
考虑何时交换相邻两段更优。令
发现交换只影响两段之间的逆序对,段内部的逆序对仍然存在。因此,当且仅当
AT_agc023_f [AGC023F] 01 on Tree,*3148。
$n\le2\times10^5$。
不妨扩展成点权为 01 序列。由上题结论,对于当前全局
Code.
* 最小化字典序模型。
CF626G Raffles,*3100。
$t$ 张彩票,将彩票分配到这些奖池中,需要保证你在第 $i$ 个奖池中押入的彩票数 $t_i$ 不能超过 $l_i$。对于第 $i$ 个奖池,中奖概率为 $\frac{t_i}{t_i + l_i}$。若中奖,则获得这个奖池的全部奖金 $p_i$。 $q$ 次事件,每次事件会使某个 $l_i$ 加 $1$ 或减 $1$。询问在最佳分配方案下获得的奖金总数的最大期望值。 $n,t,q\le2\times10^5$,$p_i,l_i\le 10^3$,答案精度误差 $\le10^{-6}$。
对于每个奖池,注意到
对于一组询问,只需用堆维护每一个奖池多放一张期望的增量,模拟贪心即可。复杂度
* 可以证明,每次修改后
Code.
P3826 [NOI2017] 蔬菜,*黑。
题意较复杂,不多赘述。
* 一组询问实际上就是最大权匹配模型,按顺序交错排列这些菜即可转化为后缀匹配,可贪心的从后向前考虑每一天,售出当前价格最高的蔬菜。
CF1148F Foo Fighters,*3800。
思路来自 gcz,拜谢。
- 对于每个二元组,记 $f_i(s)$ 表示二进制下的 $s\text{ bitand }w_i$ 中 $1$ 的个数,则令 $v_i\gets(-1)^{f_i(s)}\cdot v_i$。 构造 $s$,使得操作前后 $\sum v_i$ 符号相反。 $n\le3\times10^5$。
不妨令
而根据题意,有:
注意到:
又注意到,
记
由于二分的特殊性,不难发现,我们所要计算的区间
因此,我们需要解决的问题是,对于每个
复杂度
P10137 [USACO24JAN] Walking in Manhattan G,*蓝。
题意较复杂,不多赘述。
考虑奶牛走的路线必定如下图所示。
To be continue.
P4698 [CEOI 2011] Hotel,*紫。
To be continue.
To be continue.
P5290 [十二省联考 2019] 春节十二响,*紫。
Gym101221G Metal Processing Plant。
2025/02/06 (DP 及其优化)
CF1819D Misha and Apples,*2800。
设可重集 $T$,初始为 $\varnothing$。依次遍历每个集合,同时向 $T$ 中加入 $S_i$ 中的所有元素。若 $T$ 包含重复元素,则令 $T\gets\varnothing$。 钦定未确定的集合,求 $|T|$ 的最大值。 $n,m\le2\times10^5$。
令
显然,若
- 位置
j 可被清空,即f_j=1 ; - 区间
(j,i) 中无重复元素,即\bigcap\limits_{j<k<i}S_k=\varnothing ; - 到位置
i 时有重复元素,即\left(\bigcup\limits_{j<k<i}S_k\right)\cap S_i\ne\varnothing 。
则
发现满足第二条的
求解答案时,我们找到最长的后缀
P8903 [USACO22DEC] Bribing Friends G,*绿。
$n,A,B\le2\times10^3$。
题目分为两步:选出一些人来贿赂,以及给这些人分配冰淇淋。
第二步是容易的,贪心的给
因此,不妨设
统计答案时,枚举分界点处的第
复杂度
Code.
UVA10559 方块消除 Blocks,*紫。
长为
n 的序列a_i ,消除长为x 的连续同色段的分数为x^2 。求最大分数。
考虑一个朴素区间 dp,设
P3592 [POI 2015] MYJ,*紫。
$n\le50$,$m\le4\times10^3$。
设
转移时枚举值为
其中
不妨离散化,仅需考虑
如何计算
则有:
如何处理
总复杂度
CF1093F Vasya and Array,*2400。
同 AT_arc169_c [ARC169C] Not So Consecutive。
有长为
n 的值域为[1,k] 的序列\{a_n\} ,其中有些位置未填。填入这些数使得不存在长为l 的连续同色段,求方案数。对998244353 取模。
设
根据定义,若
对于其他的
P5664 [CSP-S2019] Emiya 家今天的饭,*蓝。
P3195 [HNOI2008] 玩具装箱,*紫。
To be continue.
斜率优化
P1912 [NOI2009] 诗人小G,*紫。
决策单调性
CF868F Yet Another Minimization Problem,*2500。
P10197 [USACO24FEB] Minimum Sum of Maximums P,*黑。
P3620 [APIO/CTSC2007] 数据备份,*蓝。
凸优化。
2025/02/07 (模拟赛 树)
CF1632E2 Distance Tree (hard version)。
2025/02/08 (链剖 树上启发式合并 Prufer 点分治 边分治)
CF685B Kay and Snowflake。
P3345 [ZJOI2015] 幻想乡战略游戏。
P4211 [LNOI2014] LCA。
CF1009F Dominant Indices。
BZOJ3252 攻略。
P4292 [WC2010] 重建计划。
CF600E Lomsat gelral。
P1600 [NOIP 2016 提高组] 天天爱跑步。
P6596 How Many of Them。
P3806 【模板】点分治 1。
P2495 [SDOI2011] 消耗战。
P6329 【模板】点分树 | 震波。
P4886 快递员。
U402226 [HNJX2021D5T1] 下落的数字。
P7518 [省选联考 2021 A/B 卷] 宝石。
LOJ6669 Nauuo and Binary Tree。
P9340 [JOISC 2023 Day3] Tourism。