#include #include #include #include using namespace std; const int maxn=305; int n,m,cnt,id[maxn],v[maxn],w[maxn],sz[maxn],f[maxn][maxn]; vector G[maxn]; void dfs(int u) { sz[u]=1; for(int i=0;i=0;j--) if(j>=w[now]) f[i][j]=max(f[i-sz[now]][j],f[i-1][j-w[now]]+v[now]); else f[i][j]=f[i-sz[now]][j]; } printf("%d\n",f[cnt][m]); return 0; }