树状数组:二进制的应用 与线段树的区别:树状数组的问题都可以用线段树解决,树状数组系数少,效率高 修改、查询复杂度 :O(log N) 单点更新、区间查询: C[1]=C[0001]=A[1] C[2]=C[0010]=A[1]+A[2] C[3]=C[0011]=A[3] C[4]=C[0100] ...
分类:
编程语言 时间:
2019-08-18 13:28:34
阅读次数:
87
zhrt的数据结构课 这个题目我觉得是一个有一点点思维的dfs+线段树 虽然说看起来可以用树链剖分写,但是这个题目时间卡了树剖 因为之前用树剖一直在写这个,所以一直想的是区间更新,想dfs+线段树,有点点没想明白 后来才知道可以把这个区间更新转化成单点更新,就是查一个结点的子树,如果子树有可以到根节 ...
分类:
其他好文 时间:
2019-08-11 13:29:46
阅读次数:
80
详细介绍:https://www.cnblogs.com/xenny/p/9739600.html http://www.sohu.com/a/245746824_100201031 https://www.cnblogs.com/wkfvawl/p/9445376.html 单点更新、单点查询 传 ...
分类:
编程语言 时间:
2019-08-10 14:15:50
阅读次数:
81
学习来源 首先要明确树状数组的本质就是带修改的前缀和,它每次用 lowbit 来很巧妙的寻找所属前缀的位置 在这些位置+k 然后还是用 lowbit 来查询这段和应该属于的树状数组的位置。 最简单的就是单点更新和区间查询,或者区间更新 然后就是区间更新和单点查询 这个就要用到差分的思想了 差分学习 ...
分类:
编程语言 时间:
2019-08-09 23:17:33
阅读次数:
104
个人觉得非常棒的博客:https://www.cnblogs.com/xenny/p/9739600.html 第一类:单点更新,区间查询 例题:http://acm.hdu.edu.cn/showproblem.php?pid=1166 AC代码: 1 /* */ 2 # include <ios ...
分类:
编程语言 时间:
2019-08-08 21:14:54
阅读次数:
113
很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input本题目包含多组测试,请处理到文件结束。 在每个测试的第一行, ...
分类:
其他好文 时间:
2019-08-02 13:03:54
阅读次数:
100
V - Can you answer these queries? HDU - 4027 这个题目开始没什么思路,因为不知道要怎么去区间更新这个开根号。 然后稍微看了一下题解,因为每一个数开根号最多开十几次就变成1了,所以就直接单点更新,但是这个可以剪枝。 如果碰到区间长度和区间大小相同就可以不用更 ...
分类:
其他好文 时间:
2019-07-31 14:53:46
阅读次数:
108
B - 敌兵布阵 HDU - 1166 C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的 ...
分类:
编程语言 时间:
2019-07-31 10:56:14
阅读次数:
132
操作: 单点更新,区间求和 区间求和:如sum [3,10) 需要对19,5,12,26节点求和即可。 观察可知,左端点为右子节点(奇数)时直接相加,右端点为左子节点(偶数)时直接相加,两边向中间移动并求其父节点。 Refer: Codeforces blog ...
分类:
其他好文 时间:
2019-07-27 09:38:44
阅读次数:
78
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1012 看到单点更新和查询先想到线段树,初始化直接将所有的位置看成0,就只有单点修改和单点查询了。 ...
分类:
Web程序 时间:
2019-07-01 19:48:27
阅读次数:
123