首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

树形DP

树形dp就是在树上进行的dp。由于树具有递归的性质,因此树形dp一半都是用递归的方式进行的。 问题的大意是,选了父节点,那么它的直接子节点就不能被选择,求总的权值的最大值。...题目:P1352 没有上司的舞会 这题是树形dp的板子题,每个节点都有被选择和不被选择两种情况。 用数组dp[n][0]记录第n个节点不被选择的情况,用数组dp[n][1]记录被选择的情况。...MAXN]; int n; //采用链式前向星的方式存储树 struct edge { int u, v, next; } e[4 * MAXN]; int head[MAXN]; int js_edge...= 0; void add_edge(int u, int v) { js_edge++; e[js_edge].u = u; e[js_edge].v = v; e[...js_edge].next = head[u]; head[u] = js_edge; } ll dp[MAXN][2]; bool vis[MAXN] = {false}; void dfs

1.1K30

树形 DP】如何从方向角度理解树形 DP

Tag : 「树形 DP」、「DFS」、「动态规划」、「树」 给定一个无向、连通的树。 树中有 n 个标记为 0...n-1 的节点以及 n-1 条边 。...= b_{i} 给定的输入保证为有效的树 树形 DP 对于树形 DP,可以随便以某个节点为根,把整棵树“拎起来”进行分析,通常还会以“方向”作为切入点进行思考。...g[u] 的推导 对于树形 DP 题目,“往下”的计算往往是容易的,而“往上”的计算则是稍稍麻烦。...对于树形 DP ,通常需要对“往上”进一步拆分:「往上再往上」和「往上再往下」: 往上再往上:是指经过了 j -> u 后,还必然经过 u -> fa 这条边时,所能到达的节点距离之和: 这部分对

20540

下拉框的讲解

拿个例子来说,一个学生信息表中,你可能想查询指定的学院或者指定的班级或者又是指定的某个人,这里可能用到一个下拉框数据的绑定。 ? 这个下拉框是怎么理解的?...比如说这个学院,学院可以有很多个,所以这个学院就可以放在下拉框中供使用者来进行一个筛选的条件。 首先你想弄到这个学院下拉框数据的绑定,就肯定得把这个学院的信息查询出来先, ?...查询完数据后当然需要在视图上绑定数据才行,这里需要用到一个已经写好js插件,这个插件里封装好了绑定下拉框数据的方法,如下图 ?...在这些步骤做完后这个学院下拉框数据就绑定好了。 这个年级的下拉框数据绑定就有点不同于这个学院下拉框数据的绑定,为什么这么说?因为是有了学院才能有年级,这两个的关系要搞清楚。...将这个年级的数据查询出来后,就在视图上写学院下拉框数据绑定,触发年级下拉框数据的绑定 首先需要获取到当前选中学院的ID,这样这个通过学院ID查询年级信息的方法才能查询出来。

3.4K10
领券