摘要: 题意:给一棵树,每个节点都有一个权值,权值只能拿一次,只让走K步,问最多能拿到多少权值这个题目一开始没料到原来可以往回走,分析了样例才知道。之后我用DFS搜索,超时后来一直想树形DP的状态转移,一直没想出来。后来还是看别人博客上的状态转移方程。dp[0][rt][j+2]=max(本身,dp[0][rt][w]+dp[0][nx][j-w])//w为枚举的需要多少步,由于要从nx子节点返回,故需要比j多两步dp[1][rt][j+2]=max(本身,dp[1][rt][w]+dp[0][nx][j-w])//走向子树后回来再一去不回,因为从子树回来需要多走两步dp[1][rt][j+1]=ma 阅读全文
posted @ 2013-11-03 14:15 KRisen 阅读(159) 评论(0) 推荐(0)