洛谷P3354 Riv河流 [IOI2005] 树型dp】的更多相关文章

正解:树型dp 解题报告: 传送门! 简要题意:有棵树,每个节点有个权值w,要求选k个节点,最大化∑dis*w,其中如果某个节点到根的路径上选了别的节点,dis指的是到达那个节点的距离 首先这个一看就是个树型dp嘛,关键是怎么设状态 首先肯定是想到设f[i][j]:以i为根的子树中选了j个点 这个时候发现布星昂,这么设的时候我们不能得到对于到根的路径上的点的贡献鸭,所以就考虑加一维 所以f[i][j][k]:以i为根的子树中选了j个点,最近祖先的距离为k的最大代价 然后直接转移就好 对了还要说一…
题目链接 题目背景 一座城市,往往会被人们划分为几个区域,例如住宅区.商业区.工业区等等.B市就被分为了以下的两个区域--城市中心和城市郊区.在着这两个区域的中间是一条围绕B市的环路,环路之内便是B市中心. 题目描述 整个城市可以看做一个N个点,N条边的单圈图(保证图连通),唯一的环便是绕城的环路.保证环上任意两点有且只有2条路径互通.图中的其它部分皆隶属城市郊区. 现在,有一位名叫Jim的同学想在B市开店,但是任意一条边的2个点不能同时开店,每个点都有一定的人流量Pi,在该点开店的利润就等于该…
P3384 [模板]树链剖分 题目描述 如题,已知一棵包含N个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作: 操作1: 格式: 1 x y z 表示将树从x到y结点最短路径上所有节点的值都加上z 操作2: 格式: 2 x y 表示求树从x到y结点最短路径上所有节点的值之和 操作3: 格式: 3 x z 表示将以x为根节点的子树内所有节点值都加上z 操作4: 格式: 4 x 表示求以x为根节点的子树内所有节点值之和 输入输出格式 输入格式: 第一行包含4个正整数N.M.R.P,…
洛谷p3384 [模板]树链剖分错误记录 首先感谢\(lfd\)在课上调了出来\(Orz\) \(1\).以后少写全局变量 \(2\).线段树递归的时候最好把左右区间一起传 \(3\).写\(dfs\)的时候不要写错名字 \(4\).使用线段树的操作的时候才要用到\(dfs\)序 \(5\).需要开一个数组来记录在\(dfs\)序下的节点是什么也方便线段树的赋值 \(6\).注意\(down\)函数内怎样更新 \(7\).在查询的时候并不需要向上更新 由于\(yxj\)看了\(lfd\)敲的树链…
题目求一棵树的最小支配数. 支配集,即把图的点分成两个集合,所有非支配集内的点都和支配集内的某一点相邻. 听说即使是二分图,最小支配集的求解也是还没多项式算法的.而树上求最小支配集树型DP就OK了. 树上的每个结点作为其子树的根可以有三个状态: 不属于支配集且还没被支配 不属于支配集但被其孩子支配 属于支配集 那么就是用dp[u][1\2\3]来作为动归的状态,表示结点u为根子树的且u状态为1.2.3的最小支配数. 123转移该怎么转移就怎么转移..最后的结果就是min(dp[root][2],…
好久没写树型dp了...以前都是先找到叶子节点.用队列维护来做的...这次学着vector动态数组+DFS回朔的方法..感觉思路更加的清晰... 关于题目的第一问...能邀请到的最多人数..so easy了...很基础的树形DP..dp[k][0]表示以k为根的子树不选k点时的最大人数...dp[k][1]代表选k点时的.... 关键是题目要求判断是否最优解唯一...首先如果状态a可以转移到状态b并且状态a达到最优方案的方式不唯一....那么转移得到的b最优方案的方式也必然不唯一...那么可以用…
题目描述 给你一棵树,你要从\(1\)号点出发,经过这棵树的每条边至少一次,最后回到\(1\)号点,经过一条边要花费\(w_i\)的时间. 你还可以乘车,从一个点取另一个点,需要花费\(c\)的时间. 你最多做\(k\)次车. 问最短时间. \(k\leq n\leq 20000,w,c\leq 50000\) 题解 我们考虑把最终路线中坐车的部分替换成走路. 那么显然不会经过一条边超过两次. 但是每条边都要经过者少一次,所以每条边只能被一个坐车的路线覆盖. 所以我们要选择不超过\(k\)条不相…
id=3140">[POJ 3140] Contestants Division(树型dp) Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 9121   Accepted: 2623 Description In the new ACM-ICPC Regional Contest, a special monitoring and submitting system will be set up, and stud…
题目链接  Round 322 Problem F 题意  给定一棵树,保证叶子结点个数为$2$(也就是度数为$1$的结点),现在要把所有的点染色(黑或白) 要求一半叶子结点的颜色为白,一半叶子结点的颜色为黑,求边权和的最小值. 若一条边连接的两个点颜色不一样,则该条边边权为$1$,否则为$0$. 考虑树型$DP$. $f[x][i][j]$表示当以$x$为根的子树中有$i$个叶子结点染成黑色并且$x$的颜色为$j$的时候边权和的最小值. 这道题计算$size$的时候只考虑叶子结点,不考虑除叶子…
题目链接  The 17th Zhejiang University Programming Contest Problem B 题意  给定一棵树,现在要加一条连接$1$(根结点)和$x$的边,求加了这条边之后,所有点到根结点的距离的和的最小值.   输出这个最小值即可. 当加的这条边为$1-x$时,$x$和$1$的中点及以下的所有点到根结点的距离都发生了变化,其他点都没有发生改变. 现在设$ans[i]$表示当加的这条边为$1-x$时的答案,考虑答案从某个点转移到他的儿子. 首先树型DP预处…