A 取余最长路 不难发现路径可以拆成三条线段,只要知道两个转折点的位置就能计算出答案。 设sum(i,l,r)表示第i行从l到r元素的和,则答案可以表示为sum(1,1,x)+sum(2,x,y)+sum(3,y,n)%p。 前缀和一下转化成(S3[n]-S3[y-1])+S2[y]+(S1[x]- ...
分类:
编程语言 时间:
2016-05-02 22:42:09
阅读次数:
222
Rb树简介 红黑树是一棵二叉搜索树,它在每个节点上增加了一个存储位来表示节点的颜色,可以是Red或Black。通过对任何一条从根到叶子简单 路径上的颜色来约束,红黑树保证最长路径不超过最短路径的两倍,因而近似于平衡。(性质3、性质4保证了红黑树最长的路径不超过最短路径的两倍) 如图所示: 红黑树是满 ...
分类:
其他好文 时间:
2016-04-28 00:18:18
阅读次数:
248
Free DIY Tour Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5815 Accepted Submission(s): 1855 P ...
分类:
其他好文 时间:
2016-04-21 21:58:53
阅读次数:
125
算法讨论: 差分约束裸题。 但是有几个注意的地方: 差分约束可以构建最短路模型,也可以构建最长路模型。 如果有x1 >= 常数。如此的形式,就提醒我们要加超级源点啦。 统计答案的方式。 为了提高SPFA的效率,可以在开始的时候把所有的点都入队。 代码: ...
分类:
其他好文 时间:
2016-04-18 07:41:09
阅读次数:
171
树的直径是指树的最长简单路。求法: 两遍BFS :先任选一个起点BFS找到最长路的终点,再从终点进行BFS,则第二次BFS找到的最长路即为树的直径; 原理: 设起点为u,第一次BFS找到的终点v一定是树的直径的一个端点 证明: 1) 如果u 是直径上的点,则v显然是直径的终点(因为如果v不是的话,则 ...
分类:
其他好文 时间:
2016-04-16 13:59:16
阅读次数:
108
一,一些定义 树的深度定义:对于树中的节点n(i),n(i)的深度定义为,从根到n(i)的唯一路径的长度。 树的高度定义:对于树中的节点n(i),n(i)的高度定义为,从n(i)到树中叶子节点的最长路径的长度。因为树中可能有多个叶子结点,n(i)到每个叶子结点都会有路径,路径最长的即为n(i)的高度 ...
分类:
其他好文 时间:
2016-04-15 18:14:03
阅读次数:
140
分析一下样例就可以知道,求的实际上是从左下角到右上角的最长路 因为对于任意不在这个最长路的上的点,都可以通过经过最长路上的点的路径将这个点的价值减光 (可以用反证法证明) 之后就是一个非常NOIP的DP了 ...
分类:
其他好文 时间:
2016-04-14 20:53:22
阅读次数:
155
Test for Job Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 8990 Accepted: 2004 Description Mr.Dog was fired by his company. In order to s ...
分类:
其他好文 时间:
2016-04-05 19:41:33
阅读次数:
199
一、红黑树的基本性质 1、红黑树本质上是一种二叉查找树BST,满足左孩子均小于根,右孩子均大于(等于)根的性质,但是它从根节点到最远叶子节点的长度不会超过到最近叶子节点的两倍,所以是近似平衡的。 【证明】由于性质5 假如说一个黑高度为3的红黑树, 最短路径定为 黑-黑-黑 长度为2 最长路径 为黑-
分类:
其他好文 时间:
2016-03-07 10:26:38
阅读次数:
187