树形dp学习笔记 - _Lancy - 博客园二叉苹果树 二叉苹果树 没有上司的舞会
二叉苹果树的处理可以说是非常模板了,正常容易联想到倒过来的数字三角形
for(int i=n;i>=1;i--)
{
for(int j=1;j<=i;j++)
{
f[i][j]=max(f[i+1][j],f[i+1][j+1])+a[i][j];
}
}
printf("%d",f[1][1]);
数字三角形中上一层的答案有下一层的左右两个转移来,二叉树上则是父节点的数值由其子节点转移来,f [ u ] [ i ] = max ( f [ u ] [ i ] ,f [ u ] [ i − j − 1 ] + f [ v ] [ j ] + w )注意两点&#x