rnqoj-30- [stupid]愚蠢的矿工-树形DP

2014-11-23 22:53:58 · 作者: · 浏览: 2
把树转化为二叉树,然后再左右DP;
#include  
#include  
#include  
#include  
using namespace std;  
struct list  
{  
    int l;  
    int r;  
}node[2001];  
int val[2001];  
int vis[2001][101];  
int m,n;  
int dp(int x,int m)  
{  
    if(m==0)return 0;  
    if(vis[x][m]!=-1)return vis[x][m];  
    if(x==0)return 0;  
    int ans=0;  
    ans=dp(node[x].r,m);  
    for(int i=0;i