码迷,mamicode.com
首页 >  
搜索关键字:叶子    ( 2578个结果
hdu5379Mahjong tree
题意:给出一棵树,用[1,n]里的n个不同的数去给结点标号,要求任意结点的儿子标号都是连续的,任意子树里的标号也都是连续的。求这样标号的方法有多少种。 做法:很显然,若一个结点有大于两个的儿子必然无解。 若当前有x个连续的数可以用来分配,那么这个结点要么取最小的那个数,要么取最大的那个数, 当该结点刚好有两个不为叶子的儿子,然后剩下的那x-1个数要么把前面的部分给左边...
分类:其他好文   时间:2015-08-12 19:36:37    阅读次数:124
HDU 5378 Leader in Tree Land 树形背包
链接 题解转自: 题意: 给定n k 下面n-1行给出一棵树。 把数字1-n填到树的节点上。 填完后计算leader节点个数,若这个点是leader,则这个点上填的数>这个点的子树上填的数 问:恰好有k个leader节点的 填涂方案数. 思路: dp[i][j]表示以i点为根的子树 有恰好j个leader的方案数。 如果u 是叶子节点则 dp[u][0] = 0, dp...
分类:其他好文   时间:2015-08-12 16:54:16    阅读次数:133
【期望DP】 HDU 4035 Maze
通道题意:一颗树对于在点i有3种情况:1:被杀死回到点1 --- 概率为ki,2:找到出口退出----慨率为ei,3:和该点相连有m条边,随机走一条,求从点1开始到退出的平均需要走的边数思路: 设 E[i]表示在结点i处,要走出迷宫所要走的边数的期望。E[1]即为所求。 叶子结点: E...
分类:其他好文   时间:2015-08-12 16:40:12    阅读次数:117
HDOJ 5379 Mahjong tree 树形DP
在一棵树上给所有点标号,要求任意一个子树里的点编号连续,每一个点的儿子编号连续。 那么,一个点的非叶子儿子应该是连续的,即一个点的非叶子儿子最多只有两个。 对于每一个点,我们把它的叶子儿子的个数记作S,所有儿子的方案数积为T。当非叶子儿子节点个数小于2的时候,方案数为2T*(S!). 当非叶子儿子节点数等于2的时候,这个点为根的子树合法方案数位T*(S!). 这样dfs一遍即可以处理整棵树的方...
分类:其他好文   时间:2015-08-12 13:18:03    阅读次数:93
Hdu 5379 Mahjong tree (dfs + 组合数)
题目链接: Hdu 5379 Mahjong tree题目描述: 给出一个有n个节点的树,以节点1为根节点。问在满足兄弟节点连续 以及 子树包含节点连续 的条件下,有多少种编号方案给树上的n个点编号?解题思路: 对于一个节点来讲,非叶子儿子节点最多有两个才能满足要求,否则满足子树节点连续的话就...
分类:其他好文   时间:2015-08-12 13:12:10    阅读次数:105
Mahjong tree (hdu 5379 dfs)
题意:一颗n个节点n-1条边的树,现在要给每个节点标号(1~n),要求:(1)每一层的兄弟节点的标号要是连续的(2)每一颗子树的所有节点标号是连续的。问有多少种标号方案。 思路:对于每一层顶多只能存在2个非叶子节点,否则无解;对于每一层有x个叶子节点,y个非叶子节点,那么ans=(ans * x!)%mod,另外如果y!=0,还得ans=2*ans%mod。...
分类:其他好文   时间:2015-08-11 23:35:11    阅读次数:155
hdu 5379 Mahjong tree 树形dp
链接 题意:给定一棵树 把1-n填到树的节点上,使得: 1:儿子节点上填的数字是连续的。 2:子树节点上填的数字是连续的。 把儿子节点分成两种,一种是叶子节点,一种是非叶子节点。 显然非叶子节点个数不能超过2个,不然就不存在这样的方案了。 然后分类讨论一下非叶子节点个数即可。 #pragma comment(linker, "/STACK:102400000,1024000...
分类:其他好文   时间:2015-08-11 21:28:53    阅读次数:135
红黑树
红黑树是一种自平衡二叉查找树,具有在最坏情况下查找、插入、删除O(log2n)的复杂度。红黑树中从根节点到任意一叶子节点的最长路径不超过最短路径的两倍,因此是一种近似平衡的二叉树。节点信息红黑树的节点具有如下信息:struct RBNode{ int data; //数据 int color; .....
分类:其他好文   时间:2015-08-11 18:37:13    阅读次数:189
各种排序方法及其比较
1.简单排序2.树形选择排序思想:将一个数组中的数两两一组,更大的数(或者更小的数)作为这两个数的父节点,依次向上构建一个完全二叉树。树的根结点即为最大的数。输出该数字之后,对应的叶子结点换成负无穷。然后在此基础上重新构建二叉树,直到所有结点均为负无穷为止。复杂度:第一个值的复杂度为n,其他值的复杂...
分类:编程语言   时间:2015-08-10 23:44:29    阅读次数:230
二叉树中和为某一值的路径
/** * 打印从根到叶子各个节点和为iSum的路径 * @param pNode 树根节点(该函数不负责判空操作) * @param iSum 所要查找的路径和 * @param path 路径(数组长度为树的深度,可用容器替代) * @param size 路径长度(初始值为0) */vo...
分类:其他好文   时间:2015-08-10 22:00:54    阅读次数:114
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!