随笔分类 - 数据结构——树状数组
二维树状数组区间修改+区间查询模版
摘要:1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 int i,j,k,n,m,p,q,t1[2005][2005],t2[2005][2005],t3[2005][2005],t4[2005][2005]; 7 long long int x1,y,x2,y2; 8 long long int...
阅读全文
loj 10117 简单题(cqoi 2006)
摘要:题目来源:CQOI 2006 有一个 n 个元素的数组,每个元素初始均为 0。有 m条指令,要么让其中一段连续序列数字反转——0变 1,1 变 0(操作 1),要么询问某个元素的值(操作 2)。 例如当 n=20时,10条指令如下: 输入格式 第一行包含两个整数 n,m,表示数组的长度和指令的条数;
阅读全文
vijos 1512 SuperBrother打鼹鼠
摘要:背景 SuperBrother在机房里闲着没事干(再对比一下他的NOIP,真是讽刺啊......),于是便无聊地开始玩“打鼹鼠”...... 描述 在这个“打鼹鼠”的游戏中,鼹鼠会不时地从洞中钻出来,不过不会从洞口钻进去(鼹鼠真胆大……)。洞口都在一个大小为n(n<=1024)的正方形中。这个正方形
阅读全文
vijos 清点人数
摘要:背景 NK中学组织同学们去五云山寨参加社会实践活动,按惯例要乘坐火车去。由于NK中学的学生很多,在火车开之前必须清点好人数。 描述 初始时,火车上没有学生;当同学们开始上火车时,年级主任从第一节车厢出发走到最后一节车厢,每节车厢随时都有可能有同学上下。年级主任走到第m节车厢时,他想知道第1到m这m节
阅读全文
线段树和树状数组的异同
摘要:线段树和树状数组的异同 线段树和树状数组在线性数据结构方面异曲同工,但树状数组的算法时间复杂度比线段树低,而且还可以大幅度降低程序的调试难度,节省时间。 但是树状数组的使用条件非常严格,可以说是线段树能做的题树状数组不一定能做,但是树状数组能做的题线段树一定能做。0.0
阅读全文
vijos1448校门外的树
摘要:描述 校门外有很多树,有苹果树,香蕉树,有会扔石头的,有可以吃掉补充体力的……如今学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的树,现有两个操作:K=1,K=1,读入l、r表示在区间[l,r]中种上一种树,每次操作种的树的种类都不同K=2,读入l,r表示询问l~r之间能见到
阅读全文
树状数组模版1
摘要:题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含3个整数,
阅读全文
POJ 2352 数星星
摘要:Stars Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 53816 Accepted: 23159 Description Astronomers often examine star maps where stars are
阅读全文
树状数组模版2
摘要:题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数数加上x 2.求出某一个数的和 输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含2或4个
阅读全文
树状数组
摘要:树状数组 树状数组的修改和求和都是O(logn),效率非常高。 树状数组——lowbit(x)例如21二进制是10101,1所在的位置是0,2,4,可以分解成2^4 + 2 ^ 2 + ^ 0。进一步的[1,x]可以分解成O(logx)个小区间: 1.长度为2^4的小区间[1,2^4] 2.长度为2
阅读全文
浙公网安备 33010602011771号