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
.....树状数组
Fenwick Tree/B.I.T
树状数组
算法
树状数组
适用范围:给定区间,求最值,求和,区间单点修改。与RMQ不同的是,RMQ一般只用作区间求最值。但在最值方面RMQ更加便捷。
Ciwikun
·
2020-03-27 02:53
排位赛 13 题解
排位赛13题解题型A-贪心√B-后缀数组√C-环形DPD-二维
树状数组
/二维线段树√E-DFS找连通块√F-快速傅里叶变换(FFT)G-DFS/二分√H-最小比率生成树/二分/迭代A-domino题意给出放骨牌位置之间的距离
染微言
·
2020-03-22 14:33
树状数组
1
详细讲解博客,推:https://www.cnblogs.com/xenny/p/9739600.htmlfor(inti=x;i;i-=i&-i)//
树状数组
求前缀和s[x];s+=c[i];区间修改
SuccessfulRoad
·
2020-03-21 15:00
BZOJ-3110: [Zjoi2013]K大数查询 题解(
树状数组
套线段树)
id=3110思路:用
树状数组
套线段树求解。首先,将所有操作离线,然后对要插入的所有数进行离散化,然后每个
树状数组
节点上建议一棵维护权值的线段树,线段树节点[l,r]维护的即是排名从l到r的数的数目。
AmadeusChan
·
2020-03-21 03:05
树状数组
(上)
#
树状数组
(上)[TOC]给出下一篇的链接:
树状数组
(下)##简介
树状数组
(BinaryIndexedTree)是一种修改和查询的时间复杂度都为$O(\log_2!n)$的一种数据结构。
LZShuing
·
2020-03-20 23:00
线段树 +
树状数组
+ ST表 模板
线段树区间修改+区间求和logNconstintN=1e5+5;inta[N];namespaceSEG{structtag{longlongsum;longlonglazy;}c[N>1;c[k>1;if(left>1;build(k>1;if(leftconstintN=500005;inta[N];inlineintmax(intx,inty){returnx>y?x:y;}inlinein
JesHrz
·
2020-03-20 06:06
Billboard HDU - 2795(
树状数组
,单点修改,区间查询)
用
树状数组
维护区间最大值。从前往后区间查询哪一大块块首先满足条件,然后一直缩小区间,直到区间长度等于1,输出答案,然后修改该点可用的w,再修改区间最大值。
SummerMingQAQ
·
2020-03-19 19:00
树状数组
求逆序对 附HDU1394
清楚的图解,解释
树状数组
求逆序对的方法,转载:https://blog.csdn.net/ssimple_y/article/details/53744096题目:https://vjudge.net/
SummerMingQAQ
·
2020-03-18 23:00
动态第K大&主席树
那么对于静态主席树来说,它影响的是tree[i],tree[i+1]...tree[n];有一个办法是对这些树全部进行更新,但是这样的复杂度会很高;同时,我们注意到,有一个很适合单点更改和求序列和的数据结构,那就是
树状数组
Gitfan
·
2020-03-14 21:55
树状数组
的基本操作
一、一维
树状数组
的基本操作转载:https://www.cnblog
SummerMingQAQ
·
2020-03-13 23:00
HDU 1754 I hate it
树状数组
维护区间最大值
ProblemDescription很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。这让很多学生很反感。不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。Input本题目包含多组测试,请处理到文件结束。在每个测试的第一行,有两个正整数N和M(0l,说明r的范围不包括l,所以可以将这个区间分成两
An_Fly
·
2020-03-11 15:00
GZOI 2017配对统计
树状数组
是在选定区间内给的,实际上不是,这道题的意思应该是在l和r的区间内找出有多少个好的配对,这里好的配对是对于整个区间来说的,既然是对于整个区间,我们就不难想到找出好的配对的方法,所以我们可以先找出所有好的配对,然后用
树状数组
维护个数
An_Fly
·
2020-03-11 12:00
【杂文】NOI Online2020 加里敦游记
\(\text{T1,T2}\)做过无数道同类型的题,基本全都是结论题/神仙贪心题果不其然,\(\text{T2}\)推出结论后就是个小学生
树状数组
。
辰星凌
·
2020-03-07 12:00
HDU 3303 Harmony Forever 前缀和+
树状数组
||线段树
ProblemDescriptionWebelievethateveryinhabitantofthisuniverseeventuallywillfindawaytolivetogetherinharmonyandpeace;thattrust,patience,kindnessandloyaltywillexistbetweeneverylivingbeingofthisearth;peopl
An_Fly
·
2020-03-07 11:00
HDU 4325 Flowers
树状数组
+离散化
FlowersProblemDescriptionAsisknowntoall,thebloomingtimeanddurationvariesbetweendifferentkindsofflowers.Nowthereisagardenplantedfullofflowers.Thegardenerwantstoknowhowmanyflowerswillbloominthegardenina
An_Fly
·
2020-03-07 11:00
POJ 3321 Apple Tree
树状数组
题解
原题链接AppleTree题意一棵多叉树每个结点有一个编号和一个值,在已知树的结构的情况下,进行两种操作。第一种是修改编号对应的结点的值,第二种是查询某个子树的值的和val。结点数量N的数组来存放每个结点的孩子。2.利用深搜递归地进行编号,用一个二元组pair来存放左值和右值3.构造线段树,其根节点的范围为[1,n],对应刚才的编号。要注意,起始阶段每个结点的值均为1,故每个区间的值都为其长度。4
失树
·
2020-03-02 20:42
rmq(区间最值,不适用于要修改的情况)
(要修改的情况就用线段树或
树状数组
)#include#include#include#includeusingnamespacestd;constintmaxn=1e5+5;intn;intmax1[maxn
Anxdada
·
2020-03-02 02:51
【数字_ID】HDU-1556-Color the ball(
树状数组
/区间修改单点查询)
编辑:数字_ID2018年5月21日1.写在题前
树状数组
很优雅,所以就找了一道水题来找信心尽量日更或者隔日更吧,之前比赛没更,所以今天补上2.题意有n个数,,k次操作,每次操作对某个区间的所有数都+1,
数字_ID
·
2020-02-28 21:30
php递归生成无限极
树状数组
在生成多级
树状数组
之前,我们一般得到的数据结构如下[{"id":6,"parent_id":5,"name":"体育专题1","intro":"体育专题1111介绍",},{"id":5,"parent_id
Zeaone
·
2020-02-20 13:01
POJ3321 Apple Tree(
树状数组
)
这跟之前有一道求父节点中的节点个数很像,我们对这个树进行dfs,记录他开始的节点和最终的节点,这样只要在两个点之间做dfs就行了首先这不会破坏树的结构,其次,他还表示了每个节点间的相对关系,这是一种很常见的
树状数组
的技巧本篇代码需要用
Isomorphic
·
2020-02-17 22:00
ACM模板_axiomofchoice
动态规划多重背包最长不下降子序列LIS计算几何向量(结构体)平面集合基本操作二维凸包旋转卡壳最大空矩形|扫描法平面最近点对|分治最小圆覆盖|随机增量法三维向量(结构体)三维凸包几何杂项数据结构ST表单调队列
树状数组
线段树并查集左偏树珂朵莉树
axiomofchoice
·
2020-02-17 20:00
POJ2155 Matrix(
树状数组
)
根据武森的国家集训队论文我们知道,只需要在四个点插入值即可,之后用二维数组求和,因为矩阵上都是0和1,并且初始为0,我们只需计算他更改次数的奇偶次#include#include#include#include#include#include#include#include#includeusingnamespacestd;typedeflonglongll;constintN=1e5+10;in
Isomorphic
·
2020-02-17 09:00
LeetCode 307. Range Sum Query - Mutable
#include#include/***LeetCode307.RangeSumQuery-Mutable*区间求和,单点修改问题*其解决方法主要为
树状数组
和线段树**此代码使用
树状数组
**两点需要注意
冬瓜仁
·
2020-02-17 05:41
POJ-2299 Ultra-QuickSort(用
树状数组
求逆序对数)
题目链接ac代码#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#definempmake_pair#definepiacos(-1)#definepiipai
DIY-Z
·
2020-02-15 23:00
POJ-2299 Ultra-QuickSort(用
树状数组
求逆序对数)
题目链接ac代码#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#definempmake_pair#definepiacos(-1)#definepiipai
DIY-Z
·
2020-02-15 23:00
HDU-1754 I Hate It (
树状数组
模板题——单点更新,区间查询最大值)
题目链接ac代码(注意字符读入前需要注意回车的影响)#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#definempmake_pair#definepiaco
DIY-Z
·
2020-02-15 23:00
HDU-1754 I Hate It (
树状数组
模板题——单点更新,区间查询最大值)
题目链接ac代码(注意字符读入前需要注意回车的影响)#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#definempmake_pair#definepiaco
DIY-Z
·
2020-02-15 23:00
HDU-1166 敌兵布阵 (
树状数组
模板题——单点更新,区间求和)
题目链接AC代码:#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#definempmake_pair#definepiacos(-1)#definepiipa
DIY-Z
·
2020-02-15 23:00
HDU-1166 敌兵布阵 (
树状数组
模板题——单点更新,区间求和)
题目链接AC代码:#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#definempmake_pair#definepiacos(-1)#definepiipa
DIY-Z
·
2020-02-15 23:00
洛谷 P3810 【模板】三维偏序(陌上花开)(CDQ分治)
弄了接近一下午+一晚上)解题思路先对所有的点按照a-b-c的优先值从小到大排序,然后去重(注意要记录每一个有几个重复的,因为条件是小于等于,所以重复的对答案也有影响),然后再按照关键字b归并排序,排序过程中,用
树状数组
记录
尹昱钦
·
2020-02-15 22:00
康拓展开 & 逆康拓展开 知识总结(
树状数组
优化)
康拓展开:康拓展开,难道他是要飞翔吗?哈哈,当然不是了,康拓具体是哪位大叔,我也不清楚,重要的是我们需要用到它后面的展开,提到展开,与数学相关的,肯定是一个式子或者一个数进行分解,即展开。到底是什么样的式子才配的上这么高大尚的名字?其中,a[i]为整数,并且0#include#include#include#include#defineMOD998244353usingnamespacestd;t
RUCKYONE
·
2020-02-14 20:00
CF594D REQ [离线+
树状数组
,欧拉函数]
设\[x=\prod_{i=1}^{cnt}p_i^{k_i}[p_i\inprime]\]那么显然\[\varphi(x)=x*\frac{1}{\prod_{i=1}^{cnt}p_i}\]因为每个质数只会出现一次,所以当成数颜色,同[HH的项链],这题就没了//poweredbyc++11//byIsaunoya#include#definerep(i,x,y)for(registerint
_Isaunoya
·
2020-02-14 20:00
2020牛客寒假算法基础训练营day04 H-坐火车
2020牛客寒假算法基础训练营day04H-坐火车思路用
树状数组
维护\([L,R]\)区间的答案,每次回答完后\(O(logn)\)更新。具体怎么做呢?
zhaoxiaoyun
·
2020-02-13 05:00
2020牛客寒假算法基础集训营4 H- 坐火车 (桶,
树状数组
)
2020牛客寒假算法基础集训营4H-坐火车(桶,
树状数组
)链接:https://ac.nowcoder.com/acm/contest/3005/H来源:牛客网时间限制:C/C++1秒,其他语言2秒空间限制
茄子Min
·
2020-02-12 20:00
2020牛客寒假算法基础集训营4 H.坐火车(
树状数组
/线段树)
感觉网上的题解都略微简略包括官方题解,所以打算写一个尽可能详细的题目链接:https://ac.nowcoder.com/acm/contest/3005/H题意:每个车厢都有三个参数,colori,li,ri,询问对于每个车厢,在其两边的车厢有多少对车厢颜色相同,并且颜色的范围在[li,ri]内思路:首先我们定义几个数组,pre[i]代表整个数组的前缀中color[i]的个数,suf[i]代表整
overrate_wsj
·
2020-02-12 17:00
lost cows
这道题用
树状数组
做比较好,虽然
树状数组
能做的线段树也可以做到,但是
树状数组
更简洁方便,易操作原理便是第x个数的二进制数最后一个“1”,决定tree的结点的长度比如:sum[3]=tree[3]+tree
sos3210
·
2020-02-12 11:00
POJ3378 Crazy Thairs(
树状数组
+dp+高精度)
一道经典的
树状数组
老题,从题目中我们看出要求五元递增组,而普通
树状数组
只能求二元,我们我们考虑开五维
树状数组
来求取例如tr[3][x],就代表以x为结尾的三元递增组for(i=1;i#include#include
Isomorphic
·
2020-02-11 19:00
C++-POJ2352-Stars[数据结构][
树状数组
]
/*虽然题目没说,但是读入有以下特点由于,输入是按照按照y递增,如果y相同则x递增的顺序给出的所以,可以利用入读的时间进行降为处理*/于是我们就得到了一个一维的
树状数组
解法啦值得一提:坐标从0~32000
Jason-Cow
·
2020-02-10 19:00
C++-POJ2155-Matrix[数据结构][
树状数组
]
二维
树状数组
+叉分区间修改转化为单点修改单点查询本来就可视为区间查询于是本题可解PS:不知道为什么函数传参数,传的是变量就会出现奇奇怪怪的问题?
Jason-Cow
·
2020-02-10 13:00
Codeforces Round #609 (Div. 2)E--K Integers(贪心+二分+
树状数组
+逆序对)
KIntegers参考博客:https://blog.csdn.net/Q755100802/article/details/103664555【题意】给定一个1到n的排列,可以交换相邻的两个元素。现在定义一个函数f(x),表示在原排列中,通过交换操作,形成一个1,2,3....x的排列的子串,需要的最小操作步骤。子串意味着这个排列必须是相邻的。现在你需要求出f(1),f(2),f(3).....
Angle_yin
·
2020-02-10 11:00
BZOJ-1062: [NOI2008]糖果雨(二维
树状数组
)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1062首先把每个云抽象成一个点(x,y),表示该云在mod2len意义下到达最左端的时间为x和长度为y,那么我们发现统计的时候可以补成统计两块平行四边形的点,那么坐标转一下,对于每个平行四边形,分别把坐标轴旋转45度,这样就变成了矩形,可以方便的用BIT统计了。代码(细节超多,注意边界的重复):
AmadeusChan
·
2020-02-10 07:00
C++-HDU1394-Minimum Inversion Number[数据结构][
树状数组
]
给出0~n-1的一个排列,可以整体移动,求逆序对最小值把数字num[i]的加入,等价于
树状数组
的第n-num[i]位加1因为num[i]是第(n-1)-num[i]+1=n-num[i]大的数字,产生逆序对
Jason-Cow
·
2020-02-10 00:00
MooFest POJ - 1990
树状数组
和DisharmonyTreesHDU-3015神似//max(vi,vj)*|posi-posj|#include#include#includeusingnamespacestd;typedeflonglongll;#definemaxn20005inttr1[maxn],tr2[maxn];structtree{intpos,val;}Tr[maxn];//按照位置排序boolcmp(tre
晴屿
·
2020-02-09 21:00
C++-POJ3321-Apple Tree[数据结构][
树状数组
]
树上的单点修改+子树查询用dfn[u]和num[u]可以把任意子树表示成一段连续区间,此时结合
树状数组
就好了#include#include#include#include#include#include
Jason-Cow
·
2020-02-09 20:00
树状数组
求逆序对
P1908逆序对离散化+
树状数组
:AC_Code1#include2usingnamespacestd;3typedeflonglongll;4constintmaxn=500010;56inta[maxn
Angle_yin
·
2020-02-09 19:00
清北学堂—2020.1提高储备营—Day 2 afternoon(线段树、
树状数组
)
qbxtDay2afternoon——2020.1.18济南主讲:李佳实目录一览1.线段树2.二叉搜索树(略过)3.
树状数组
总知识点:基础数据结构(本人初学感觉好难)一、线段树1.描述:线段树是一种分治的思想
Pursue_Dreams
·
2020-02-09 17:00
A Simple Problem with Integers
ASimpleProblemwithIntegers这道题目只涉及区间修改以及区间查询,所以只要我们利用线段树或者
树状数组
进行优化,这道题就很容易解决了。
CADCADCAD
·
2020-02-09 14:00
Ultra-QuickSort POJ - 2299
树状数组
求逆序对
#include#include#include#includeusingnamespacestd;typedeflonglongll;constintN=5e5+10;intn;inta[N];inttr[N];intb[N];intc[N];intlowbit(intx){returnx&-x;}voidadd(intx,intc){for(inti=x;i>n,n){for(inti=1;i
晴屿
·
2020-02-08 23:00
Matrix Sum HihoCoder - 1336 二维
树状数组
感觉好像二维差分。
#include#includeusingnamespacestd;typedeflonglongll;constllmod=1e9+7;constintN=1005;llc[N][N];charop[5];intlowbit(intx){returnx&-x;}voidadd(intx,inty,intd){for(inti=x;i0;i-=lowbit(i))for(intj=y;j>0;j-
晴屿
·
2020-02-08 22:00
按钮控制彩灯实验 CSU - 1770
树状数组
差分变单点修改
#include#include#includeusingnamespacestd;constintN=100010;inta[N];inttr[N];intn,m;intl,r;intlowbit(intx){returnx&-x;}voidadd(intx,intc){for(inti=x;i<=n;i+=lowbit(i))tr[i]+=c;}intsum(intx){intres=0;fo
晴屿
·
2020-02-08 22:00
上一页
43
44
45
46
47
48
49
50
下一页
按字母分类:
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
其他