摘要: 题意 "Here" 思考 看第一眼:状压dp,再看范围gg 第二眼:普通dp,貌似可以直接递推? 其实就是个很裸的错排问题,写个博客顺便复习下~ 错排问题就是说一个 $n$ 的排列,每个元素都满足 $a[i] != i$,求方案数 记 $f[n]$ 为 $n$ 的错排方案数,我们可以考虑递推: 1. 阅读全文
posted @ 2018-11-05 23:34 alecli 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 题意 "Here" 思考 树上链修改,树上链查询,考虑树链剖分 染色操作:线段树区间修改,注意 $lazy$ 数组的赋初值 查询操作,线段树每个节点记录该段左端点颜色和右端点颜色,树上跳 $top$ 的时候注意合并的处理,(如果现在端的右端点颜色等于上一段左端点颜色,就少计一种颜色),主要是细节问题 阅读全文
posted @ 2018-11-05 21:55 alecli 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 题意 "Here" 思考 严格次小生成树,就是求出严格的次小生成树~ 次小生成树其实是很好求的,枚举每一个没选的边 $(u, v, d)$,用它来替换 $u, v$ 间的最大边即可,但是存在没选的边与要替换的边权值相等,那么就会出现次小生成树的权值等于最小生成树的权值,这样就不“严格”了。 当然求严 阅读全文
posted @ 2018-11-05 20:41 alecli 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题意 "Here" 思考 这题题意简要来讲就是:给定树上许多条链,求删掉一条边后,所有链的最大值最小是多少 首先,各个点对间的距离可以用lca求出,主要问题是怎样考虑这个删边,删除一条边后会有以下两种情况: 1. 取得最大值的点对间经过该边 2. 取得最大值的点对间不经过该边 这样就很难处理了,我们 阅读全文
posted @ 2018-11-05 20:17 alecli 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 题意 "Here" 思考 $WQS$ 二分,第一次做,感觉细节有点多。 由于要求选 $need$ 条白边,我们考虑每次给所有白边加上一个权值,再与黑边一起做生成树,这样就可以限制我们加入白边的个数了,但是这样我们还存在一个问题,如果有白边等于黑边权值,我们可能会先统计黑边,造成白边达不到 $need 阅读全文
posted @ 2018-11-05 13:46 alecli 阅读(157) 评论(0) 推荐(0) 编辑