随笔分类 - 动态规划_树形dp
摘要:用dfs序+子树大小 >>>线性dp 事实上这道题这样做相当于用线段树做RMQ 但是相当于依赖背包通法吧 #include<iostream> #include<cstdio> #define ri register int #define u int namespace opt { inline
阅读全文
摘要:用dfs序+子树大小 >>>线性dp #include<iostream> #include<cstdio> #define ri register int #define u int namespace opt { inline u in() { u x(0),f(1); char s(getch
阅读全文
摘要:树上分组背包模型, 即每个子树选一种状态,状态为f[x][y]表示以x为根的子树中选y个的最大价值,怎么选并没有影响 注意y>=1则x必须选,即x必须先选了,y即其子节点才能选 同样是森林,需要建立虚点N+1连向无先行课的课 #include<iostream> #include<cstdio> #
阅读全文
摘要:每个节点只与其子节点状态有关,所以设f[x][0/1]表示x点不选或选 建立一个虚点N+1链接到所有最高级的没有上司的上司,答案就是f[N+1][0],因为虚点不可选 #include<iostream> #include<cstdio> #define ri register int #defin
阅读全文
摘要:【问题描述】图图是一个很萌很萌很可爱的好孩纸。他正在玩一款策略游戏, 地图由 n 座城市组成, 并由 n - 1 条无向带权边连接成树形结构。 为了解决物资补给, 图图需要在这 n 座城市选出若干座城市建立机场, 其中在第 i 座城市建立机场的代价是 cost[i]。建立机场之后, 每座城市得到补给
阅读全文
摘要:https://www.luogu.org/problem/P5258 题目描述 Waldives 有 NN 个小岛。目前的交通系统中包含 N-1N−1 条快艇专线,每条快艇专线连接两个岛。这 N-1N−1条快艇专线恰好形成了一棵树。 由于特殊的原因,所有 N-1N−1 条快艇专线都是单向的。这导致
阅读全文

浙公网安备 33010602011771号