摘要: 题意: 给定一棵n个点的树,给定平面上n个点,将n个点用线段连起来画成树的形状,使得不存在不在端点相交的线段,构造出一种情况。 解法: 首先观察我们常规画出来的树形图可知,树的子树是根据极角分开的,这样,我们每一次找到最靠左下的点, 而后对剩余点极角排序,根据子树大小和极角的连续关系将点集划分,依次 阅读全文
posted @ 2017-03-08 21:57 lawyer' 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题意: 给出$n$个点的树,记$sum(x)$为$x$子树的点权和。$m$此操作 1.将一个点的权值改为c 2.查询$\sum_{x=l}^r { sum(x)}$ 解法: 修改一个点 x 的点权会使得从x到root的所有点的$sum(i)$加上一个数字。 考虑对1~n分块,块的大小为$O(\sqr 阅读全文
posted @ 2017-03-08 17:19 lawyer' 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 题意: 给一匹配的括号序列,要求每对括号恰有一个被染成蓝或红色,要求相邻的括号不同色,求方案数。 解法: 类比树的hash将括号序列转化为一棵树,树上子节点之间不得出现冲突, 子节点和父节点不得出现冲突,问题转化为树形dp问题,$O(n)$解决。 1 #include <iostream> 2 #i 阅读全文
posted @ 2017-03-08 17:05 lawyer' 阅读(132) 评论(0) 推荐(0) 编辑