
树形dp
文章平均质量分 64
CoderCat.
大
展开
-
洛谷P1270_树形dp_dfs+记忆化搜索
#include #include using namespace std;const int maxn = 1000;struct treenode{ int time, val;}tn[maxn*10];int pt;//警察到达的时间int dp[maxn][maxn]={0};//在i节点,剩余时间为j的最大值(只管当下)int dfs(int rt,原创 2018-05-06 17:12:22 · 194 阅读 · 0 评论 -
【模板】洛谷P2015_树形dp(带边权)_链式前向星+dfs
多叉树均可边权,取q条边使权值最大(1)dfs求该节点u的子节点个数(==边的总数)(2)枚举u的含当前v的子树所保留的边数,和不含v的子树保留的边数(3)在过程中更新答案原创 2018-05-06 13:25:18 · 355 阅读 · 0 评论 -
洛谷P2014_问题巧妙转化_套模板
可用模板https://blog.youkuaiyun.com/jay__bryant/article/details/80213774本题:森林结构,含点权,选择若干点,使得权值最大问题转化:(1)新加入一个节点0做为根节点(2)本来无父亲的点的父节点为0(3)将每个点的点权转化为与父节点之间连的边的边权(4)则该问题就转化为模板的模型了*************原创 2018-05-06 18:11:41 · 135 阅读 · 0 评论 -
【模板】洛谷P1352_树形dp_拓扑排序实现
拓扑排序,从下往上解,并同时记录更新答案#include #include #include using namespace std;const int maxn = 6010;int happy[maxn];//i的快乐值int fa[maxn], son[maxn];//父亲的编号和儿子的个数int dp[maxn][2];//i加与不加的快乐值最大值。1表示加,0不加原创 2018-05-05 18:26:58 · 297 阅读 · 0 评论