树状数组是对一个数组改变某个元素和求和比较实用的数据结构。设a[1...N]为原数组,定义c[1...N]为对应的树状数组:c[i]=a[i-2^k+1]+a[i-2^k+2]+...+a[i]其中k为i的二进制表示末尾0的个数,所以2^k即为i的二进制表示的最后一个1的权值.也就是说,把k表示成二...
分类:
其他好文 时间:
2014-09-02 10:14:14
阅读次数:
574
题意:一个由n个非负整数组成的序列,问进行最多k次相邻交换后最少的逆序对数 (1 ≤ n ≤ 10^5, 0 ≤ k ≤ 10^9, 0 ≤ ai ≤ 10^9)。。
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4911
——>>每次只能交换相邻的两个数,每次交换,只改变这两个数的逆序,其他的数对于这两个数的逆序没有改变,所以,求出所有的逆序对...
分类:
其他好文 时间:
2014-09-01 21:15:35
阅读次数:
191
题解:基础的树状数组区间修改,单点查询。#include #include int c[100005],a,b,n;int modify(int x,int num){while(x0)s+=c[x],x-=x&-x;return s;} //特别注意s初始化为0。 int main(){ w...
分类:
其他好文 时间:
2014-09-01 19:30:33
阅读次数:
184
题意:
给一棵树
给出两种操作:
1.在某个结点上加上一个值,在这个结点所有的儿子结点上减去这个值,在这个结点的所有孙子结点上加上这个值,在所有曾孙子结点上减去这个值,直到底。
2.查询某个结点上的值
分析:
把这个问题转化为树状数组的区间求和
样例经过dfs处理后如下,每个结点处理出了两个值l,r,层数1,2,3...,层数为奇数的属性为0,层数为偶数的属性为1
可以看到...
分类:
其他好文 时间:
2014-09-01 14:09:03
阅读次数:
213
题目链接:点击打开链接
当转移[l,r] 区间时, 若[0, r-1] 这里的区间都已经转移完毕时是最优的,所以按右端点升序,同理右端点相同时左端点升序,然后树状数组维护一下前缀和。
#include
#include
#include
#include
#include
using namespace std;
#define N 100005
#define mod 100000...
分类:
其他好文 时间:
2014-08-31 18:43:51
阅读次数:
340
题目大意:
有一棵树,对这个树有两种操作:1:表示为(1 x val),在编号为x的节点上加上val,然后给x节点的每个儿子加上- val,再给每个儿子的儿子加上-(- val),一直加到没有儿子为止。2:表示为(2 x)查询x节点上的值。
做法:
由于每次修改操作修改的并不是一个值,而是很多值,那我们将该题抽象成区间修改,点查询的问题。那怎么抽象呢?可以明白的是,每次操作虽然有加有减,但是...
分类:
其他好文 时间:
2014-08-31 09:16:01
阅读次数:
235
每次只把短的部分往长的部分折叠,直接用树状数组爆搞就可以了。
每次长度都缩小一些暴力的复杂度不是太高,启发式暴力????
C. Appleman and a Sheet of Paper
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standa...
分类:
移动开发 时间:
2014-08-30 15:11:21
阅读次数:
275
Codeforces Round #263 (Div. 1)
A:贪心,排个序,然后从后往前扫一遍,计算后缀和,之后在从左往右扫一遍计算答案
B:树形DP,0表示没有1,1表示有1,0遇到0必然合并,0遇到1也必然合并,1遇到0必然合并,1遇到1,必然切断,按照这样去转移即可
C:树状数组,再利用启发式合并,开一个l,r记录当前被子左右下标,和一个flip表示是否翻转
代码...
分类:
其他好文 时间:
2014-08-30 12:38:09
阅读次数:
281
树状数组的引入:
对于查询和修改要求差不多,使用树状数组可以达到logN的复杂度
红色矩形表示的数组C就是树状数组.这里,C[i]表示A[i-2^k+1]到A[i]的和,而k则是i在二进制时末尾0的个数,或者说是i用2的幂方和表示时的最小指数。
所谓的k,也是该节点在树中的高度.
修改第i个元素,为了维护数组C的意义,需要修改C[i]以及C[i]的全部祖先,而非C[i]的祖先的节点则对...
分类:
其他好文 时间:
2014-08-30 11:15:39
阅读次数:
224
Crazy Thairs
Time Limit: 3000MS
Memory Limit: 65536K
Total Submissions: 6598
Accepted: 1636
Description
These days, Sempr is crazed on one problem named Crazy Thair...
分类:
其他好文 时间:
2014-08-29 18:25:32
阅读次数:
201