树形dp
Self-Discipline
在校大学生
展开
-
牛客国庆集训派对Day3 B Tree
题目:点击打开链接 题意:略。 分析:树形dp(树上dfs),两遍dfs,一遍求下面(儿子)的贡献,一遍求他父亲节点的贡献,两部分相乘得结果,注意0没有逆元,需要特判。思路参考https://blog.csdn.net/u013534123/article/details/82934820,写的很详细。 代码: #pragma comment(linker, "/STACK:102400...原创 2018-10-06 11:20:55 · 186 阅读 · 0 评论 -
HDU 6540
题意:给你一棵树,树上有一些重要的点,让你选一个只包含重要的点的点集,满足点集里最远的两个点不超过k,问有多少种选法。 分析:dp[i][j]表示在i这颗子树中距离i点最远点距离为k的方案数。考虑如何从子树转移,显然 我们遍历到一颗新子树时,要用之前的所有方案乘以这颗子树的方案来更新。即dp[u][max(i,j+1)]+=dp[u][i]*dp[to][j],暴力更新的复杂度是k^2的,居然...原创 2019-05-28 20:37:32 · 402 阅读 · 1 评论