一名苦逼的OIer,想成为ACMer

Iowa_Battleship

随笔分类 -  树形DP

洛谷1273 有线电视网
摘要:"原题链接" 显然是一个树形$DP$,状态转移则是裸的分组背包模型。 先将边权转换为点权,即每个转播台或用户的权值为原来的点权减去它到父亲的边权(没有的作为$0$去计算),记为$V[x]$。 设$f[x][k]$表示以$x$为根的子树中,选择$k$个用户所能达到的最大收入,$size[x]$表示以$ 阅读全文

posted @ 2018-10-23 18:09 Iowa_Battleship 阅读(128) 评论(0) 推荐(0) 编辑

BZOJ1217或洛谷2279 [HNOI2003]消防局的设立
摘要:"BZOJ原题链接" "洛谷原题链接" 该题有两种做法,树形$DP$和贪心。 先讲贪心。 先将所有点按深度从大到小排序,然后从大到小依次取出点,若已经被覆盖则跳过,否则就在它的祖父点建立消防站。 考虑如何判断该点是否被覆盖,设数组$dis[x]$表示点$x$到达离它最近的消防站的距离。 则在扫到一个 阅读全文

posted @ 2018-10-22 21:21 Iowa_Battleship 阅读(105) 评论(0) 推荐(0) 编辑

BZOJ4033或洛谷3177 [HAOI2015]树上染色
摘要:"BZOJ原题链接" "洛谷原题链接" 很明显的树形$DP$。 因为记录每个点的贡献很难,所以我们可以统计每条边的贡献。 对于每一条边,设边一侧的黑点有$B_x$个,白点有$W_x$,另一侧黑点有$B_y$,白点有$W_y$,边权为$w$,那么这条边的贡献就是$(W_x\times W_y + B_ 阅读全文

posted @ 2018-09-30 10:33 Iowa_Battleship 阅读(149) 评论(0) 推荐(0) 编辑

JoyOI1940 创世纪
摘要:一道基环树+树形$DP$ "原题链接" 显然输入的是内向基环树森林,且我们可以单独考虑每一棵基环树。 既然是基环树,自然先$dfs$找环,然后随便找环上的一点$r$,将其与$A[r]$的边断开,建反边,这时就会形成一棵以$r$为根的树,且每个点的子节点都是能限制它的元素。 于是我们可以在这棵树上跑树 阅读全文

posted @ 2018-09-07 20:55 Iowa_Battleship 阅读(186) 评论(0) 推荐(0) 编辑

导航