摘要: 树形dp题意:给出n,p,一共有n个节点,要求最少减去最少的边是多少,剩下p个节点思路:典型的树形DP,dp[s][i]:记录s结点,要得到一棵j个节点的子树去掉的最少边数 考虑其儿子k 1)如果不去掉k子树,则 dp[s][i] = min(dp[s][j]+dp[k][i-j]) 0 #include#includeusing namespace std;int dp[200][200],father[200],brother[200],son[200];int n,p;void dfs(int root){ int k,i,j,temp; for(i=0;i=1;i--) ... 阅读全文
posted @ 2014-04-09 21:45 疯狂的癫子 阅读(177) 评论(0) 推荐(0) 编辑