夜间模式暗黑模式
字体
阴影
滤镜
圆角
主题色
Luogu P2585 [ZJOI2006]三色二叉树 题解

Describe

题目链接

Solution

$0-$绿色,$1-$红色,$2-$蓝色。
设$f[i][j]$表示$i$节点染成$j$这种颜色的最大值。
如果$i$节点的没有儿子,那么很明显$f[i][0]=1$。
如果$i$节点有一个儿子,那么$f[i][0]=max(f[to][1],f[to][2])+1,f[i][1]=max(f[to][0],f[to][2])$(颜色染成蓝色与红色类似)
如果$i$节点有两个儿子,那么$f[i][0]=max(f[lson][1]+f[rson][2],f[lson][2]+f[rson][1])+1$(颜色染成红色、蓝色只需不用$-1$即可)
最大值如此,最小值类似。

Code

暂无评论

发送评论 编辑评论


				
上一篇
下一篇