- 博客(4)
- 收藏
- 关注
原创 【解题报告】公司聚会
题目来源:vijos1418. 参考自:raoyu的题解 其实这是一个在树上的01背包问题。这道题与经典的公司聚会不同,因为上司的定义由父结点改为了所有祖先。这样问题也由树形dp变为了01背包。由于题目中有一个非常重要的条件,“员工的编号会大于他的直接上司的编号”,我们可以直接循环而不用建立树结构。 设f[v,m]是以v为根的子树花费m元最大可以获得的兴奋指数。则在循环到v以前,f[v,m]表
2017-07-11 16:50:32 591
原创 【解题报告】舞会
题目来源:vijos1706.这题比较简单。对于任意一棵以v为根的子树,要么上司v上去,要么v的下属们上去,显然搞笑值是负的的家伙们只要坐着看就好了(笑)。设f[v,1]为以v为根节点的子树有下属上台的最大搞笑值,f[i,2]为以v为根节点的子树只有上司上台的最大搞笑值。则状态转移方程如下: f[v,1]=∑i=1smax(f[ch[v,i],1],f[ch[v,i],2])f[v,1]=\sum
2017-07-11 16:46:01 366
原创 【解题报告】选课
题目来源:vijos1180. 树形DP,设f[v,num]为以v为根的子树选取num门课所能得到的最大学分。为了方便分配这num门课程,我们将题目所给的多叉树转换为二叉树。 参考资料:原理、代码 .转为二叉树后,实际上任意节点i的左孩子(包括左孩子的孩子)是i真正的子节点,而i的右孩子(包括右孩子的右孩子)是i节点的兄弟节点。故i未选时,i的所有左孩子不可选,但右孩子可以。于是得状态转移方程如
2017-07-11 16:25:26 400
原创 【解题报告】小胖守皇宫
【树形DP】小胖守皇宫题目来源:Vijos1144。根据题意,此题要求求最优值,并且按照从叶向根这个决策顺序来看,后面的决策不会影响到前面的决策(对此句有疑问可接着往下看),满足无后效性。因此姑且套用动态规划来一做。动态规划的核心是状态转移方程。正所谓状态转移方程,我们就需要先知道有哪一些状态。由题意得知,所有的宫殿均要被看守到,于是对于任意一个宫殿i来说,必处于以下三种状态中的任意一种: 1. 被
2017-07-08 21:30:33 975
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人