摘要: 想到的dp但是思路不对没有想到利用乘法原理。设二叉树的高度为k,其中的节点个数为n则可能的二叉树个数f[k][n] = 2 * 求和(f[k - 1][r]*smaller[k - 1][n – 1 - r])+ 求和(f[k - 1][r]*f[k - 1][n – 1 - r])其中r的范围为从1到n第一项表示,左子树高度为k-1,右子树高度小于k-1,乘以2,表示左右子树对换的情况。第二项表示,左右子树的高度都是k-1这里需要注意的是smaller的计算,smaller[k][n]表示的是高度比k小,节点个数为n的子数可能种类。USACO的分析解答:This is a DP proble 阅读全文
posted @ 2011-06-06 21:44 记录点滴 阅读(521) 评论(0) 推荐(0)