题目大意:输入n,统计有多少个n个结点的有根树,使得每个深度中所有结点的子结点数相同。结果模1000000007。思路:根据题意,每个结点的每个子树都是相同的。所以n结果为n-1的所有约数的结果加起来。示意图:代码如下: 1 #include 2 #include 3 #include 4 #...
分类:
其他好文 时间:
2014-09-12 20:32:24
阅读次数:
233
基本数据结构主要包括:栈、队列、链表和有根树。10.1 栈和队列栈和队列都是动态集合,且在其上进行DELETE操作所移除的元素时预先设定的。在栈中,被删除的是最近插入的元素:栈实现的是一种后进先出(LIFO)策略。队列实现的是一种先进先出(FIFO)策略。栈栈上的INSERT操作称为压入(PUSH)...
分类:
其他好文 时间:
2014-09-07 12:13:05
阅读次数:
281
Hash在信息学竞赛中的一类应用中的某道例题"不难想到的算法是使用两个字符串分别表示两棵树,但是如果使用Hash的话应该怎么做呢?可以使用一种类似树状递推的方法来计算Hash值:对于一个节点v,先求出它所有儿子节点的Hash值,并从小到大排序,记作H1,H2,?,HD。那么v的Hash值就可以计算为...
分类:
其他好文 时间:
2014-09-02 22:34:55
阅读次数:
235
Description
A tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one or more nodes connected by directed edges between nodes satisfying the following proper...
分类:
其他好文 时间:
2014-08-23 17:46:41
阅读次数:
218
题目大意:给出一棵n个节点的有根树,一开始 树根 是一个控制点,现在要增加m个控制点,使得总费用最少。给出每个节点的父节点以及到父节点的距离,还有这个节点的权值, 一个节点的费用 即它的权值 乘以 离他最近的且是控制点的祖先的距离。 (控制点的费用为0); n<=100 m<=50解题过程:1.一看...
分类:
其他好文 时间:
2014-08-19 14:08:44
阅读次数:
224
动态树动态树问题, 即要求我们维护一个由若干棵子结点无序的有根树组成的森林。要求这个数据结构支持对树的分割、合并,对某个点到它的根的路径的某些操作,以及对某个点的子树进行的某些操作。在这里我们考虑一个简化的动态树问题,它只包含对树的形态的操作和对某个点到根的路径的操作:维护一个数据结构,支持以下操作...
分类:
其他好文 时间:
2014-08-08 23:48:56
阅读次数:
306
基本概念LCA:树上的最近公共祖先,对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u、v的祖先且x的深度尽可能大。RMQ:区间最小值查询问题。对于长度为n的数列A,回答若干询问RMQ(A,i,j),返回数列A中下标在[i,j]里的最小值下标。朴素LCA算法求出...
分类:
其他好文 时间:
2014-08-08 17:36:16
阅读次数:
226
题意:n台及其连成一个树状网络,其中叶结点是客户端,其他结点是服务器。已经有一台服务器提供VOD服务,要求出最少在几个记得点放置服务器,使得所有客户端到服务器的距离都不超过k。
思路:先将无根树状化为有根树。之后就利用贪心,找到深度最大的结点u,每次放置服务器的地方都要放在u的k级祖先,这样是最划算的。
#include
#include
#include
#includ...
分类:
Web程序 时间:
2014-08-06 12:00:31
阅读次数:
225
B树定义:一棵B树T是具有如下性质的有根树: 1)每个节点X有以下域: a)n[x],当前存储在X节点中的关键字数, b)n[x]个关键字本身,以非降序存放,因此key1[x]=2表示。 a)每个非根的结点必须至少有t-1个关键字。每个非根的内结点至少有t个子女。如果树是非空的...
分类:
其他好文 时间:
2014-07-25 16:31:41
阅读次数:
228
n个城市通过m条无向边连接,回答q个询问,每个询问形式为s,t,要找到一条s到t的路使得这条路上的最大危险系数最小。还是最小瓶颈路,可是要快速回答每次询问,先求出最小生成树,转化为有根树,即找到s到t的路径上的最大边,在这一过程中倍增查找。预处理的复杂度为nlogn,每次查询为logn。#inclu...
分类:
其他好文 时间:
2014-07-13 09:56:45
阅读次数:
213