10.22模拟赛
T1:P15970 树上检查
期望得分:100
实际得分:100
难点在于读出 \(k \le 4\),是 \(4\) 的范围!想到密码锁,所以分讨。
\(1\) 和 \(2\) 直接暴力求组合数做完了,想 \(3\),发现可以直接刻画一条路径覆盖下来的情况。
路径一定有最高点,在最高点计算即可,使用树形dp,\(k = 4\) 也一样。
秒了,当时钦定这题是绿题,我认为比毒瘤题简单,所以是绿,然后看T2去了想切掉。
T2:P17139 [KOI 2026 #1] 跳跃
期望得分:100
实际得分:100
我开了,当时不知道这个是蓝的,很敢想,一下就发现了性质,就是跳跃路径单调,分析一下发现区间最小值就全包含了。
然后就是线段树区间求min,然后还要求中间段的点数,所以开一个树状数组当作动态的前缀和。
其实这个题归约到二维偏序了只是第二维高度是排好的。
T3:P17409 【MX-X31-T5】「FAOI-R14」noiday2t3 数据
期望得分:38
实际得分:0
一眼看出得01背包,然后我看背包过不了所以看部分分。
不带修直接暴力是对的,所以写19分,然后我为了打238,红温了看 \(n \le 200\) 的性质。
发现这个修改很恶心,直接重新做T飞了,于是发动鬼脑想到夜跑,可撤销背包,一下写出来了。
写自己不熟悉的算法挂飞了,我的撤销部分复用加入部分有一块忘改了,痛失238无缘rk1,我是区。
然后就是cyf讲树的性质,这个就是修改的时候修改儿子,然后查询输出 \(dp_y + dp_{y - a[fa]}\) 即可。
正解需要平面图的性质,一定有一个点的度 \(\le 5\),删掉这个点,还是平面图,所以一定还有点度 \(\le 5\),别问我为什么我不知道。
所以进行拓扑排序,一个点度 \(\le 5\) 入队,连向的点记为 \(out_x\),和树的形式一样,更新就更新所有的 \(out_x\)。
关键是,查询的时候没有 \(out_x\) 的贡献,怎么加入?
考虑最最最暴力的暴力,状压枚举每个点是否选,\(2^5\) 才 \(32\),做完了。
这个题神了。
T4:P16997 【MX-S15-T3】「DLESS-5」旅游定价
期望得分:0
实际得分:0
赛时看了半天想打暴力,发现困难,主要是我式子都推出来了但是不知道不等式直接相加是对的,痛失 \(13\) 分。
这个题我听whs讲没听懂,看题解画了一张图直接对上脑电波会了一大半,后面状压dp学一会就会了。
先考虑问题转化,发现有绝对值,绝对值要么像 T2 那样拆了,要么就要画函数了,这个题没法拆,画函数。
每个游客对应着一个斜率为 \(1\) 的顶点为 \((a_i , -q_i)\) 的绝对值函数,这里为什么随便允许负数呢?因为负数的话整体抬高 \(p\) 降低 \(q\) 依旧合法,所以那个限制没用。
看看情况,考虑 \(k = 0\),这个旅游团会紧贴下边界,也就是尽量能涨价就涨价,对于一个游客,他的顶点肯定也会顶到下边界,这样可以增加 \(q_i\)。
实际意义呢?就是黑心商家按照标准最高的游客定尽可能高的价,然后一个游客去哪里都便宜必须继续坑他给他涨价。
然后就是只有这个下边界有用,直接对着这个做,还是先考虑 \(k = 0\) 的做法,发现可以贪心。
每次决策,后缀游客多就往下,旅游团多就往上,于是会了 \(k = 0\)。
对于普遍情况,还要决策旅游团选在哪里,贪心没法做上dp,旅游团肯定选在最高的位置,\(k\) 比较小于是直接状压,记录前 \(k\) 位怎么走的,然后动态算贡献就可以了。
具体地,前面那部分的贡献直接按旅游团贴左边界算,然后加上max增量就可以了。
我们到最后都没有考虑这个下边界与 \(y\) 轴的交点,这个得益于旅游团数与游客数相等,上下平移不产生贡献。
如果不相等呢?那么这个就不收敛了,答案均为inf。
别忘了乘上 \(n\),原题的式子比较阴。

浙公网安备 33010602011771号