E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ACM-树链剖分
树链剖分
原理
树链剖分
用一句话概括就是:把一棵树剖分为若干条链,然后利用数据结构(树状数组,SBT,Splay,线段树等等)去维护每一条链,复杂度为O(logn)那么,
树链剖分
的第一步当然是对树进行轻重边的划分。
ACdreamers
·
2013-08-30 14:12
数据结构
树链剖分
原理
树链剖分
用一句话概括就是:把一棵树剖分为若干条链,然后利用数据结构(树状数组,SBT,Splay,线段树等等)去维护每一条链,复杂度为O(logn) 那么,
树链剖分
的第一步当然是对树进行轻重边的划分。
ACdreamers
·
2013-08-30 14:00
HDU1116-欧拉回路
判断为Yes的情况:首先必须是连通的其次全部点入度=出度或有两个点入度-出度=1,出度-入度=1;入度=出度的情况为构成了回路,例如abc->cde->efa另外一种便是如同一条链,例如:
acm-
>malform
u011538668
·
2013-08-27 22:00
1036: [ZJOI2008]树的统计Count (
树链剖分
)
1036: [ZJOI2008]树的统计Count Time Limit: 10 Sec Memory Limit: 162 MB Submit: 3401 Solved: 1418 [ Submit][ Status] Description 一棵树上有n个节点,编号分别为1到n,每个节点都有
·
2013-08-15 10:00
count
ACM-
水题之Digital Roots——hdu1013
好吧,这几天刷一些水题找找感觉,发现,一段时间不练,水平下降好多啊,做个水题都磨蹭半天了。。。。 DigitalRootsProblemDescription Thedigitalrootofapositiveintegerisfoundbysummingthedigitsoftheinteger.Iftheresultingvalueisasingledigitthenthatdigitisth
lx417147512
·
2013-08-01 10:00
ACM-
数论之 Fibonacci Again——hdu1021
这道题,虽然是个水题,但是没有一个数学公式,难死了==!,我暴力了很多遍还是没有成功,我知道不能用暴力破解,但实在想不出来有什么方法,没办法,求助咯,最终才知道有这么个余数公式:(a+b)%3=(a%3+b%3)%3有了这个公式,那真是手到擒来了!这题也体现出ACM与数学那不可分割的关系啊~FibonacciAgainTimeLimit:2000/1000MS(Java/Others) Me
lx417147512
·
2013-07-30 10:00
ACM-
水题之 let the balloon rise——hdu1004
LettheBalloonRiseTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):65180 AcceptedSubmission(s):24152ProblemDescriptionContesttimeagain!Howexciteditistose
lx417147512
·
2013-07-30 09:00
spoj 375 (
树链剖分
)
思路:继上一道Freetour之后漆子超论文里的第三道例题,上两道是点,这次是用的是
树链剖分
,具体解题思想,可以看漆子超的论文。如果单独纯模拟,虽然期望
u010794465
·
2013-07-21 14:00
poj-openjudge 1042:Moles 解题报告
北大校赛题意:给出一棵带权树,树根为1,mole当前位于1,有三种操作1u:mole移到点u,并输出移动的距离2:输出mole所在点到其子孙的最大距离3uvw:将一棵树边(u,v)的权值改为w思路:一开始想的是
树链剖分
u010638776
·
2013-07-08 15:00
BZOJ 1036([ZJOI2008]树的统计Count-
树链剖分
[成熟版])
1036:[ZJOI2008]树的统计CountTimeLimit: 10Sec MemoryLimit: 162MBSubmit: 3205 Solved: 1335[Submit][Status]Description一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成一些操作:I.CHANGEut:把结点u的权值改为tII.QMAXuv:询
nike0good
·
2013-07-07 12:00
usaco 2011 Dec Gold(Grass Planting-
树链剖分
第一题)
Problem3:GrassPlanting[TravisHance,2011]FarmerJohnhasNbarrenpastures(2 #include #include #include #include #include #include #include #include #include usingnamespacestd; #defineFor(i,n)for(inti=1;i=0
nike0good
·
2013-07-01 09:00
BZOJ1146 CTSC2008 网络管理network
丧心病狂的数据结构题、、
树链剖分
之后用线段树套一个随便什么BST维护第K大值、、 Code:#include #include #include #include #include #include
·
2013-06-18 22:00
NetWork
ACM-
线段树
#include usingnamespacestd; #defineMAXN100 structNode { intleft,right,mid; intcover;//表示给数据是否存在 }seg_tree[4*MAXN];//数组一般开到4倍长度 voidbuild(intl,intr,intnum)//l,r为当前结点的左右端点,num为结点在数组中的编号 { cout=seg_tree
xianglunxi
·
2013-06-05 17:00
数据结构
模板
ACM
HDU 3966 Aragorn's Story
树链剖分
模板
题目:http://acm.hdu.edu.cn/showproblem.php?pid=3966题解:#include #include #include #include usingnamespacestd; #defineMAXN50010 #defineL(u)(uedge[MAXN]; voidinit(intn) { for(inti=1;ix路径上的所有点已经被更新了 } if
Tsaid
·
2013-05-30 22:00
数据结构
1468: Tree 点分治
与
树链剖分
的思想差不多,我们把分治策略应用到树上。比如这个题,我们要求的是一些合法的路径,这些路径我们可以分为两种:过某个点和不过某个点。这样我们就可以分别来求这两种情况。
Phenix_2015
·
2013-04-22 21:00
ACM-
大数阶乘末尾零的个数
阶乘末尾0的个数有一个题目说的是求100的阶乘末尾有多少个0.题解中给出的讲解提到,一个数n的阶乘末尾有多少个0思路:一个数n的阶乘末尾有多少个0取决于从1到n的各个数的因子中2和5的个数,而2的个数是远远多余5的个数的,因此求出5的个数即可.题解中给出的求解因子5的个数的方法是用n不断除以5,直到结果为0,然后把中间得到的结果累加.例如,100/5=20,20/5=4,4/5=0,则1到100中
ashuai81
·
2013-04-09 21:00
ACM-
大数N!的位数公式
这文章转来的,觉得不错,百度、google到处都有,不知道原文出处所以没贴链接。 N!求解位数下面介绍两种方法直接求阶乘结果的位数:方法一 可以将n!表示成10的次幂,即n!=10^M(10的M次方)则不小于M的最小整数就是n!的位数,对该式两边取对数,有 M=log10^n!即: M=log10^1+log10^2+log10^3...+log10^n 循环求和,就能算得
ashuai81
·
2013-04-09 21:00
ACM-
必备知识点
时间复杂度(渐近时间复杂度的严格定义,NP问题,时间复杂度的分析方法,主定理)排序算法(平方排序算法的应用,Shell排序,快速排序,归并排序,时间复杂度下界,三种线性时间排 序,外部排序)数论(整除,集合论,关系,素数,进位制,辗转相除,扩展的辗转相除,同余运算,解线性同余方程,中国剩余定理)指针(链表,搜索判重,邻接表,开散列,二叉树的表示,多叉树的表示)按位运算(and,or,xor,sh
alalalalalqp
·
2013-04-04 19:00
树链剖分
小节
前段时间学习了下
树链剖分
,好久没看了,今天又复习一遍,赶紧写下来,别又忘了。
dyx404514
·
2013-03-25 17:00
LCA的
树链剖分
实现
这篇本来是要在
树链剖分
小节中写的,但是我感觉这只是
树链剖分
的一个衍生物,所以另开了一篇,如果对
树链剖分
部分还不是太了解,请看上面的链接。
dyx404514
·
2013-03-25 17:00
2013-2-22
ACM-
第三次月赛 1005 BT飞船
BT飞船TimeLimit:3000/1000ms(Java/Other) MemoryLimit: 65535/32768K(Java/Other)TotalSubmission(s):0 AcceptedSubmission(s):0Font:TimesNewRoman|Verdana|GeorgiaFontSize:←→ProblemDescription外星人BT近日要乘他的飞船造访地
gubojun123
·
2013-02-22 17:00
ACM
ACM
2013-2-22
ACM-
第三次月赛 1002 表格
表格TimeLimit:3000/1000ms(Java/Other) MemoryLimit: 65535/32768K(Java/Other)TotalSubmission(s):0 AcceptedSubmission(s):0Font:TimesNewRoman|Verdana|GeorgiaFontSize:←→ProblemDescriptionExcel中的列号是使用大写字母标识
gubojun123
·
2013-02-22 17:00
ACM
ACM
2013-2-22
ACM-
第三次月赛 1001 铺地毯
铺地毯TimeLimit:3000/1000ms(Java/Other) MemoryLimit: 65535/65536K(Java/Other)TotalSubmission(s):0 AcceptedSubmission(s):0Font:TimesNewRoman|Verdana|GeorgiaFontSize:←→ProblemDescription为了准备一个独特的颁奖典礼,组织者
gubojun123
·
2013-02-22 17:00
ACM
ACM
BZOJ1103 POI2007 大都市
这题目的意思大致就是本来有一棵所有边的权都是1的树、然后经过若干次操作把所有边的权值都变成0、中间会让你求根到一个点的权值和、本来想过
树链剖分
、后来看看数据范围和如此弱的操作又感觉不是、、然后分析一下、
·
2013-02-21 22:00
2007
树链剖分
原文地址:
树链剖分
作者:starszys “在一棵树上进行路径的修改、求极值、求和”乍一看只要线段树就能轻松解决,实际上,仅凭线段树是不能搞定它的。
laziercs
·
2012-12-14 17:00
ACM-
输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”
#include //#include #defineN100 voidremoveObjectAtIndex2(char*ptr,intindex); voidremoveObjectAtIndex2(char*ptr,intindex){ ptr+=index; for(;*ptr!='\0';ptr++){ *ptr=*(ptr+1); } *ptr='\0'; } voidremo
qiuxuewei2012
·
2012-12-08 11:00
字符串
C语言
Spoj 375 Qtree
树链剖分
+ 线段树 解法
前面介绍过Qtree的动态树解法,现在写一种更高效的,使用
树链剖分
,数据结构采用线段树:题目链接:http://www.spoj.pl/problems/QTREE/代码:#include #include
niuox
·
2012-11-04 15:00
杭电题库分类
ACM/ICPC PKU 题目分类(2008-02-0817:16:27)标签:icpc it 分类:ICPC
ACM-
题型分类的代码主流算法:Ø 1.搜索//回溯Ø 2
xuexiacm
·
2012-10-26 20:00
BOJ Season Autumn, 2012
from=0101010202&ref=hotnewsfeed&sfet=102&fin=0&ff_id=256603565#nogoA怎么乱搞都能过…标程是用
树链剖分
写的,然后通过的代码有dfs序列的
shahdza
·
2012-10-10 00:00
c
codeforces 192E Fools and Roads
给你一棵树,然后有m个操作,每个操作有两个数a b,表示给从a到b的简单路径上的边权都加1,最后要你输出每条边的边权解法1:dfs用
树链剖分
做的话就是很裸的题目了,但是这道题没有让你对路径上的边权进行求和等操作
haha593572013
·
2012-10-01 15:00
ini
树链剖分
http://blog.sina.com.cn/s/blog_7a1746820100wp67.html 别人转的讲解,看的这个学的。感觉不是必要的方法,其他方法也能做的,一般要维护树种路径的最值时才需要这个算法spoj375对边权的路径剖分#include #include #include #include #include usingnamespacestd; constintmaxn=1
jxy859
·
2012-08-25 10:00
2010
poj 3237 加强版 query on a tree
树链剖分
id=3237题意:一棵树,两种更新操作,改变一条边的边权,将a->b路径上的所有边权取反,询问一条路径上的最大边权都是典型的
树链剖分
,下面一题是上面的加强版,还要在树上进行成段更新,其实也不难。
haha593572013
·
2012-08-21 23:00
c
struct
tree
query
ini
Build
树形结构转线形结构——
树链剖分
——子树问题
昨天遇到了这样一道题目: 一个公司有n个员工,编号从0 到n-1,每个员工都有一个直系上司,编号为0的是整个公司的董事长(包工头),现在,给出每个员工每月的初始工资,为了鼓励最佳员工和最佳部门,现在,董事会会有以下两种询问: 1、employeexyz:询问员工x的工资,如果员工的x的工资小于y,那么就给他(她)涨z元 2、departmen
zhjchengfeng5
·
2012-08-17 21:00
apple
struct
tree
query
ini
Build
查询树的路径上边权的极值的简便方法
这种题我都是用
树链剖分
做的,没想到还有这么简单的方法,ORZ一下!
haha593572013
·
2012-08-15 18:00
light oj 1128 倍增法LCA + DP
题意:一棵树,每个点都有一个点权,给你q个询问ab,求a到根节点的路径中点权大于等于b且最接近根节点的点编号刚开始想用
树链剖分
搞,后来听说用倍增+DP也行做法:如果懂倍增法求祖先的方法的话,那么这个DP
haha593572013
·
2012-08-11 18:00
ini
poj 2831 次小生成树 or
树链剖分
poj2831次小生成树or
树链剖分
题目描述: 给一个点数为N(N 2 #include 3 #include 4 using namespace std; 5 #define re(i,n) for
算法学社
·
2012-05-20 15:00
bzoj 2243
树链剖分
+线段树
bzoj2243
树链剖分
+线段树题目描述 在一颗点数为Nv染色2.询问路径u->v上有多少种颜色吐槽: 1.4KB的代码... 2.唉....这题的思路非常好想...但是我还是捉了好久....真弱
算法学社
·
2012-05-16 17:00
spoj 375
树链剖分
+LCA+RMQ(zkw线段树)
spoj375
树链剖分
+LCA+RMQ(zkw线段树)题目描述 在一个点数为N(N 2 #include 3 #include 4 #include 5 using namespace std
算法学社
·
2012-05-14 22:00
ACM-
游玩景点(AC,动态规划,最大子序列和问题)
游玩景点TimeLimit:1000MS MemoryLimit:65536KTotalSubmit:182Accepted:35DescriptionDieIng五一要去旅游,旅游区的景点道路分布如图:欣赏景点的道路为东西走向,每条道路有DieIng对它的喜爱值;南北走向为林间小道,供休息用。由于五一游客较多,旅游区规定欣赏景点的道路只能单向行走,自东向西走;林间小道可双向行走。DieIng要你
gzzheyi
·
2012-05-14 13:00
优化
input
旅游
output
HDU3966 Aragorn's Story
树链剖分
pid=3966【前言】前几天在学
树链剖分
。主要还是为比赛做一下模板。但是找不到很基础的题可以做。这道题的线段树部分不是最简单的那种,用的也是别人的模板。上次WA了,好几天还没碰。
Human_CK
·
2012-04-14 08:00
【
树链剖分
+维护凸线】Saber
秋哥是saber控,每次saber都很难,但是还有两种颜色的saber没出。有一棵n个点的树,每个点有四个权值x,y,p,q,给出m个询问(a,b),假设i,j为a到b的路径上的可以重合的两个点,求(yi+qj)/(xi+pj)的最大值。二分答案,就化出了(x,y)与(p,q)分开的式子,分别对此两式求最大值判断,用斜率的经典分析来看(x,y)若有一k比i优,则yk-ans*xk>=yi-ans*
huyuncong
·
2012-03-10 15:00
数据结构询问类题解决方法
对于这种题常用数据结构有:线段树(树状数组可以看成线段树的简化版本)、Segplaytree、各种块状结构,以及线段树在树结构上的应用——
树链剖分
、Segplaytree在树结构上的应用——Link-cutTree
Mato is No.1
·
2012-01-22 23:00
QTREE——树的路径剖分(又称
树链剖分
)
原题地址【有关树的路径剖分的东东在网上介绍的太多了……】常见的路径剖分的方法是轻重边剖分,即把树中的边分为轻重两部分,方法:设SZ[i]为以i为根的子树的大小(结点总数),则若点x不是叶结点,则其子结点中SZ值最大的(注意,有多个SZ值最大的子结点应任选一个,只能选一个,防止出现重链相交,引发歧义)点y,边(x,y)称为重边,其余的边都是轻边。首尾相连的重边称为重链(注意一定是自上而下的),则一个
Mato is No.1
·
2012-01-03 16:00
树链剖分
模板
/* 节点的标号从1开始 */ #include <cstdio> #include <algorithm> using namespace std; const int N = 10000; //N为节点的个数 struct e{ int v; e* nxt; }es[N<<1], *fir[N]; struct
goAheadtw
·
2011-10-05 14:00
bfs
树链剖分
hdu3710(
树链剖分
计算lca)
突然发现剖分树可以在log(n)的时间里求出lca,于是又删了几十行的代码。 #include <iostream> #include <stdio.h> #include <vector> #include <algorithm> #include <ctime> using namespace std; const
goAheadtw
·
2011-09-30 00:00
LCA
树链剖分
krusckal
北大
ACM-
题型分类
http://acm.pku.edu.cn/主流算法:1.搜索//回溯2.DP(动态规划)3.贪心4.图论//Dijkstra、最小生成树、网络流5.数论//解模线性方程6.计算几何//凸壳、同等安置矩形的并的面积与周长7.组合数学//Polya定理8.模拟9.数据结构//并查集、堆10.博弈论1、排序1423,1694,1723,1727,1763,1788,1828,1838,1840,220
guomei
·
2011-06-19 13:00
数据结构
算法
calendar
Numbers
Allocation
combinations
ACM-
宏定义常量的运行速度与常量的运行速度
最近做了一道北大ACM题,题目ID:3761,题目名称为BubbleSort。惊奇的发现,我用宏定义数值常量,RuntimeError了。而如果将所有的宏定义常量转化为const定义的常量的时候,却可以顺利的通过,这点令我很惊讶。一直以为宏定义只影响编译速度,对代码的运行速度没有影响。我唯一的猜测是,现在的CPU对变量进行了优化,将经常使用的变量放在了常用的寄存器中,从而提高了速度,然而仅仅
zengniao
·
2011-05-04 14:00
todo list
- Y:\c++\
acm-
Y:\c++\编程之美- 3.
cutepig
·
2011-03-05 16:00
【动态树初探】link-cut tree
spoj上有一系列关于树的很有趣的题目(qtree1~4),和
树链剖分
、动态树有关,所以就狠下心的研究了一番,多亏找到了一篇好论文《qtree解法的一些研究byyangzhe》,解决动态树问题的数据结构叫
jasonzhu8
·
2010-08-03 06:00
数据结构
json
tree
input
Access
output
ACM-
位运算
运算方法有六种:&与运算|或运算^异或运算~非运算(求补)>>右移运算10110)| x>>1在最后加一个0 |(101101->1011010)| x1011011)| x101101)| x|1把最后一位变成0 |(101101->101100)| x| 1-1最后一位取
linleiqin
·
2010-04-18 20:00
上一页
31
32
33
34
35
36
37
38
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他