“挂分大战?”
首先,T1 比较水,秒了。
T2 花了 分钟,就把线段树优化 dp 写完了,一遍过编过所有大样例。考完发现只有 。大样例太水了。
T3 有点想复杂了,写了一个半小时,但是其实就是树形 dp,复杂度没有问题,就是树形 dp 普通的 复杂度。
T4 不可做。考后发现暴力好好写可以过。
其实只有水题和不可做题的比赛能说的不多。
| 用时 | 分数 | 正解 | 我的思路 | 问题 | 方案 | |
|---|---|---|---|---|---|---|
| T1 | min | 入门模拟 | 入门模拟 | 无 | 无 | |
| T2 | min | multiset 平衡树优化 dp | 线段树优化 dp | 交上去错了,代码应该是不够清晰 | 让老师给强一点的大样例/代码写清晰,不清晰的局部重构 | |
| T3 | min | 树形 dp | 树形 dp | 复杂度研究了半天 | 记住模型方法,点对证明时间复杂度,考场需要好好想时间复杂度本质,而不是粗略思考 | |
| T4 | min | 防 AK 的搜索优化 | 暴力 | 没有仔细思考通项 | 记住暴力出奇迹 |
T1
题目概括
从 个货物中恰好选 个,每个货物有基础价值 和附加价值 。总利润为所选货物的 加上其中最大的 ,求最大利润。
。
不说了。
T2
题目概括
给定序列 ,可在位置 花代价 买锚点,获得半径 ,之后可无限次任意重排任意包含 且长度不超过 的连续子段。求使整个序列变为不降的最小总代价,无解输出 。
。
想到思路不难,写完没有调试就过大样例了。
但是只有 ,大样例过水。
考后重构了。感觉虽然写得很快正确率比较高,但是写法不够清晰。我是直接从 到 枚举,端点什么的特判,但是更好的写法是类似枚举端点,关键点。甚至利用性质,一定是用最右边的给最左边的做贡献。
T3
题目概括
对 个节点的树的每条边指定方向(指向某一端点)。若某节点至少有一条入边则苏醒,求恰好 个节点苏醒的定向方案数,对 取模。
。
这个想复杂了,觉得复杂度不对加上了启发式。
这个的转移是普通的树形 dp 的转移,对于每一个点需要进行合并,是已合并大小乘上当前儿子大小。用点对表示法可以证明。
T4
题目概括
从单根出发,可重复执行两种操作:① 加一个新根连旧根;② 加新根连旧根,再给新根加两个叶子。定义 为不覆盖根的匹配数, 为总匹配数。给定 及询问 ,统计满足 且 的不同无标号有根树数量。
。
怎么说呢,看着难还是需要继续往下推的,退出通项,然后暴力可以过。
观察到询问少(虽然我考试没有观察到)不要用 map 了,暴力判断当前答案可以塞进某个询问吗。
这道题把暴力放过了。