码迷,mamicode.com
首页 >  
搜索关键字:树状    ( 5251个结果
HDU 5044 Tree --树链剖分
题意:给一棵树,两种操作: ADD1: 给u-v路径上所有点加上值k, ADD2:给u-v路径上所有边加上k,初始值都为0,问最后每个点和每条边的值,输出。解法:显然是树链剖分,剖出来如果直接用线段树来区间更新的话会TLE,所以要换一种姿势,有一种树链剖分的经典姿势就是看做树状数组一样,每次加值的时...
分类:其他好文   时间:2014-10-02 12:50:42    阅读次数:165
线段树之入门篇
线段树(interval tree) 是把区间逐次二分得到的一树状结构,它反映了包括归并排序在内的很多分治算法的问题求解方式。   上图是一棵典型的线段树,它对区间[1,10]进行分割,直到单个点。这棵树的特点 是: 1. 每一层都是区间[a, b]的一个划分,记 L = b - a 2. 一共有log2L层 3. 给定一个点p,从根到叶子p上的所有区间都包含点p,且其他区间都不包...
分类:其他好文   时间:2014-10-02 09:14:52    阅读次数:196
hdu 1166 敌兵布阵
标准的树状数组模板题,需要注意的是树状数组的初始节点的编号为1。 1 #define MAX_N 1000007 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 int bit[MAX_N+...
分类:其他好文   时间:2014-10-02 01:09:01    阅读次数:303
hdu 1556 Color the ball
可以使用线段树来做,但是使用树状数组会更加简洁,对于第i个点被涂的次数$s$,为$s=\sum_{k=1}^{i}x_k$,因此对于区间$[a,b]$的涂色,对于下标$a$增加一,对于下标$b+1$减少一,这样就可以保证对于$i\in [a,b]$中的点,$s$加一,对于$i \notin [a,b...
分类:其他好文   时间:2014-10-02 00:04:01    阅读次数:232
HDOJ 3966 Aragorn's Story
树链剖分+树状数组 Aragorn's Story Time Limit: 10000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2934    Accepted Submission(s): 806 Problem Descriptio...
分类:其他好文   时间:2014-10-01 23:30:41    阅读次数:300
nyist oj 117 求逆序数 (归并排序&&树状数组)
求逆序数 时间限制:2000 ms  |  内存限制:65535 KB 难度:5 描述 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。 现在,给你一个N个元素的序列,请你判断出它的逆序数是多少。 比如 1 3 2 的逆序数就是1。 输入第一行输入一个...
分类:其他好文   时间:2014-10-01 19:33:21    阅读次数:151
BZOJ 1878 SDOI 2009 HH的项链 树状数组 + 离线处理
题目大意:有一些珠子串成的项链,珠子有不同的颜色。多次询问一段区间内有多少不同的颜色。 思路:这个题让我学会了一种巧妙的离线做法。将问题按左端点排序。处理出来每个颜色第一个出现的位置,和每个颜色下一个出现的位置。然后1到cnt循环,如果这里有一个问题的左端点是当前节点,就处理他的答案,方法是前缀合,可以用树状数组。然后把这个颜色的下一个出现的位置+1。 这样做就避免了一种颜色在询问中被...
分类:其他好文   时间:2014-10-01 15:21:51    阅读次数:205
BZOJ 1452 JSOI 2009 Count 二维树状数组
题目大意:有一个m*n的方格,每一个格子有他自己的权值。2种操作: 1.改变一个格子的权值。 2.查询所有的x1...
分类:Web程序   时间:2014-10-01 14:50:21    阅读次数:319
HDU 3966 dfs序+LCA+树状数组
题目意思很明白:给你一棵有n个节点的树,对树有下列操作:I c1 c2 k 意思是把从c1节点到c2节点路径上的点权值加上kD c1 c2 k意思是把从c1节点到c2节点路径上的点权值减去kQ a 查询节点a的权值数据大小 节点个数 n[1,50000], 操作次数 op[0,30000];不会树链...
分类:其他好文   时间:2014-09-30 18:08:09    阅读次数:374
HDU 3966 Aragorn's Story(树链抛分)
HDU Aragorn's Story 题目链接 树抛入门裸题,这题是区间修改单点查询,于是套树状数组就OK了 代码: #include #include #include #include using namespace std; const int N = 50005; inline int lowbit(int x) {return x&(-x);} i...
分类:其他好文   时间:2014-09-30 14:37:49    阅读次数:199
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!