摘要: 题目大意: 给你一棵n个结点的树,按给定顺序进行以下两种操作: 1.把根到x路径上的所有点的点权都变成1; 2.把x的子树中,所有点的的点权都变成0。 问每一步操作时,有多少点的点权发生了改变。 思路: 树链剖分。 每次操作前先询问,再修改。 注意结点是从0开始的,所以各种地方都要改。 尤其注意so 阅读全文
posted @ 2017-12-19 19:43 skylee03 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 给你一棵n个点的树,以1为根,每个点都有一个点权,要求进行如下操作: 1.将x这个点的点权加上a; 2.将以x这个点为根的子树中每个点的点权加上a; 3.查询从x到根的路径的点权和。 思路: 树链剖分。 对于第2种操作,我们不难发现一个子树中结点在线段树中的编号一定是连续的。 于是修改子 阅读全文
posted @ 2017-12-19 17:52 skylee03 阅读(671) 评论(1) 推荐(0) 编辑
摘要: 题目大意: 给你一棵n个点的树,有m次操作,每次将给定的路径上所有点的点权+1。 问最后最大的点权是多少。 思路: 树链剖分模板题。 阅读全文
posted @ 2017-12-19 15:14 skylee03 阅读(174) 评论(0) 推荐(1) 编辑
摘要: 题目大意: 一个机器人按照给定的一系列指令进行运动。 总共有两种指令: T:向某个方向旋转90度。 F:向当前所朝的方向走一个单位长度。 一开始机器人站在原点,且朝向x的正半轴方向,问机器人是否可能会经过点(x,y)。 思路: 不难想到一个O(n^3)的DP。 考虑如何重新设计状态来优化到O(n^2 阅读全文
posted @ 2017-12-19 11:41 skylee03 阅读(166) 评论(0) 推荐(0) 编辑