二维的树状数组和一维的类似,分为单点更新区间查询和区间更新单点查询两种 1、单点更新,区间查询 add(int x, int y, int d):tree[x][y] += d; sum(int x, int y):返回(1,1)到(x, y)之和 注意: 修改某一点的值,num[x][y] += ...
分类:
编程语言 时间:
2018-04-24 00:25:30
阅读次数:
215
自用模板,树状数组 原理不讲,只说用法 树状数组建立成功之后,传入参数i,j 能轻松求解出来 数组a[i]+a[..]+...+a[j]的值 核心函数lowbit(),无论是建立树状数组还是更新,这个函数就最重要的函数,也是降低时间复杂度的精髓所在。 树状数组的建立,实际上是不断更新的过程,想让某个 ...
分类:
编程语言 时间:
2018-04-20 00:13:36
阅读次数:
192
https://www.luogu.org/problemnew/show/P1966 离散化 树状数组求逆序对个数 ...
分类:
其他好文 时间:
2018-04-06 16:46:31
阅读次数:
129
3688: 折线统计 Description 二维平面上有n个点(xi, yi),现在这些点中取若干点构成一个集合S,对它们按照x坐标排序,顺次连接,将会构成一些连续上升、下降的折线,设其数量为f(S)。如下图中,1->2,2->3,3->5,5->6(数字为下图中从左到右的点编号),将折线分为了4 ...
分类:
其他好文 时间:
2018-04-06 00:15:14
阅读次数:
317
题意:给你一串数,然后有一个价值计算公式,每次只能连续输出一段,问输出所有数的总价值最小是多少 思路:斜率优化,但我不知道为什么写成slop就不对,可怜我的斜率优化板子,又要该了,其他没什么,简单的推一下是下凸包,没什么其他的了 代码: ...
分类:
其他好文 时间:
2018-04-01 18:47:48
阅读次数:
156
Description "题库链接" 给出一个长度为 $n$ 的序列 $A$ 。如果序列 $A$ 不是非降的,你必须从中删去一个数,这一操作,直到 $A$ 非降为止。求有多少种不同的操作方案,答案模 $10^9+7$ 。 $1\leq n\leq 2000$ Solution 显然对于 $A$ 的一 ...
分类:
其他好文 时间:
2018-03-26 22:35:09
阅读次数:
196
Let's call a string adorable if its letters can be realigned in such a way that they form two consequent groups of equal symbols (note that different ...
分类:
其他好文 时间:
2018-03-24 23:52:04
阅读次数:
515
Description "题库链接" "题面链接" Solution 这里给出主席树的版本。主席树维护直线的一个端点在前 $i$ 个端点中,另一个端点在区间内的个数。 Code cpp //It is made by Awson on 2018.3.21 include define LL long ...
分类:
其他好文 时间:
2018-03-21 21:07:01
阅读次数:
220
对不起,常数小就是可以为所欲为的。 "题目" cpp // luogu judger enable o2 include include include using namespace std; struct node { int tree[100100]; int num; int lowbit( ...
分类:
编程语言 时间:
2018-03-09 20:38:55
阅读次数:
238
Description 有一张n×m的数表,其第i行第j列(1 include include define P 1 ...
分类:
其他好文 时间:
2018-03-04 23:52:37
阅读次数:
207