随笔分类 -  《训练指南》题解

摘要:传送门: https://www.luogu.com.cn/problem/UVA11992 蓝书(训练指南)的线段树例题。 分析 这题在思维上并不复杂,是线段树的常见操作。 需要注意的地方主要是标记优先级: 这里我像蓝书一样记增加标记为 addv,赋值标记记为 setv。 当遇到赋 阅读全文
posted @ 2021-09-02 21:05 HinanawiTenshi 阅读(61) 评论(0) 推荐(0) 编辑
摘要:分析 这题核心思想是数学变换: 方便起见,我们考虑一个左开右闭的区间 (L,R],一个合法的区间满足: sumRsumLRLp% 化简可得: 100sumLpL100sumRpR 我们记 \(v_x=sum_ 阅读全文
posted @ 2021-08-20 14:59 HinanawiTenshi 阅读(44) 评论(0) 推荐(0) 编辑
摘要:传送门: https://vjudge.net/problem/UVALive-3905 分析 将每个点进出矩形的时间的左右区间 [L,R] 处理出来,这样就可以在一维的时间轴做扫描法了。 细节&技巧: 注意到在矩形边界的点不计入贡献,因此处理出来的时间区间均为开区间,在维护贡献 \(cn 阅读全文
posted @ 2021-08-20 12:19 HinanawiTenshi 阅读(34) 评论(0) 推荐(0) 编辑
摘要:板子题: https://www.luogu.com.cn/problem/UVA11174 分析 整个图形成了一片森林,我们记一棵树(根节点记为 root)的排序方案数为 f[root]。 我们记 root 以下的子节点(即它们的父节点为 root)为 \(c_1, 阅读全文
posted @ 2021-07-30 17:37 HinanawiTenshi 阅读(225) 评论(0) 推荐(1) 编辑
摘要:这题细节还挺多的。 分析 拿到题目先拿样例找一下性质。 对于最初的局面,发现如果有一个位置出现 X ,那么它的左边两个或者右边两个位置只要存在 X ,那么先手必然胜利。 如果不存在上面的情况,我们就可以枚举一下先手决策的位置,看看所得到的状态能不能让后手必输。 这时候我们想到用 sg 函数来刻画这一 阅读全文
posted @ 2021-07-28 20:52 HinanawiTenshi 阅读(43) 评论(0) 推荐(0) 编辑
摘要:感觉这种位置指针跳来跳去的题好难写对,记录一下套路。 传送门:https://www.luogu.com.cn/problem/UVA10382 思路比较简单:处理一下每个装置的有效左右区间(显然半径刚好能够到达的点是临界),然后从左到右贪心地选取装置:具体来说就是维护一个前缀的控制区域(只需维护最 阅读全文
posted @ 2021-07-11 12:01 HinanawiTenshi 阅读(37) 评论(0) 推荐(0) 编辑
摘要:传送门:https://vjudge.net/problem/UVALive-4287 分析 强连通分量(SCC) + 有向无环图(DAG) 的性质 由 SCC 性质知,一个 CC 内的点可以相互到达(也就是里面的定理已经可以相互证明了),所以我们使用 SCC 将问题转化为给定一个 DAG,求使 D 阅读全文
posted @ 2021-07-05 23:23 HinanawiTenshi 阅读(50) 评论(0) 推荐(0) 编辑
摘要:这题贪心的话似乎不太可行我没想出怎么贪,所以用区间dp来解决。 更好的阅读体验:qwq 分析 f[l][r] 表示先手在区间 [l,r] 的最优决策所能给他带来的贡献,因为区间 [l,r] 的总和 s[l,r] 是一定的,那么这个最优决策在意味着最大化自己的收益 阅读全文
posted @ 2021-06-14 20:10 HinanawiTenshi 阅读(33) 评论(0) 推荐(0) 编辑
摘要:分析 如果直接使用LCS来解决,那么复杂度为 O(pq) ,显然会超时。 因为给出的两个序列的数都是互不相同的,我们将第一个序列的数按 1,2,3... 依次编号,然后将第二个序列的数(当然这个数应该是存在于第一个序列的)按照数值映射到相应的编号中,注意到题目所求的LCS恰好就是第二 阅读全文
posted @ 2021-06-14 17:41 HinanawiTenshi 阅读(32) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示