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

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