BIT
Nekroz_
这个作者很懒,什么都没留下…
展开
-
【模板】逆序对(树状数组)
逆序对在编程中比较常见,最普通的O(n ^ 2)算法很短,但是太慢了,往往不满足我们的要求。一种高级的O(nlogn)的算法是使用归并排序,在归并排序执行过程中解决问题,时间是短,但是代码量太大了。现在,我们有一种算法,时间短,代码量也少,很好记,就是用树状数组来实现。int n, c[MAXN], number[MAXN]; struct Node { int val, num; } a[...原创 2018-03-15 10:17:04 · 491 阅读 · 0 评论 -
【模板】树状数组BIT
讲树状数组之前,首先要来夸夸树状数组。 树状数组真的是一种好东西啊~~~代码极短,又非常好写,很实用,好东西呐。夸完了树状数组,现在就来讲讲树状数组。 树状数组(Binary Indexed Tree),又名二叉索引树,Fenwick树,其处理的问题模型一般可以转化为如下形式: 定义一个数组 a[1..n]a[1..n]a[1 .. n ],并维护一下两个操作:修改,给 a[i...原创 2018-06-09 20:21:27 · 327 阅读 · 0 评论 -
【题解】HDU1892 See you~
传送门题目大意:你有三种操作:S x1 y1 x2 y2S x1 y1 x2 y2S \ x1 \ y1 \ x2 \ y2 表示查询从 (x1,y1)(x1,y1)(x1, y1) 到 (x2,y2)(x2,y2)(x2, y2) 之间这块矩形中所有数之和。A x原创 2018-06-09 20:59:28 · 263 阅读 · 0 评论 -
【题解】HDU3584 Cube
传送门题目大意:你有两种操作1 x1 y1 z1 x2 y2 z21 x1 y1 z1 x2 y2 z21 \ x1 \ y1\ z1\ x2 \ y2 \ z2,将 (x1,y1,z1)(x1,y1,z1)(x1, y1, z1) 到 (x2,y2,z2)(x2,y2...原创 2018-06-09 21:26:18 · 290 阅读 · 0 评论 -
【进阶】树状数组 BIT
之前我讲过最基本的树状数组 ,这里讲一讲它的”进阶形态“.具有可加性的内容让树状数组来维护会显得很方便(比如说和),而不满足可加性的内容让树状数组来维护会有点麻烦(虽然已经有 dalao 给出了树状数组求最大值和 select 的程序,但我想这个时候还是老老实实写线段树或者平衡树吧)。之前讲的是单点修改加区间查询,现在就从树状数组区间修改单点查询开始吧。先丢一波单点修改区间查询的代码。cl...原创 2019-07-13 18:20:13 · 275 阅读 · 0 评论