Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 54923 Accepted Submission(s): 25566 Problem Descr ...
分类:
其他好文 时间:
2019-09-11 19:55:24
阅读次数:
83
"题目描述" 思路 代码 c++ include include long long n, m; struct { long long at[1000005], arr[1000005 1; this build(k build(k add(k, l, r, v); return; } int mi ...
分类:
其他好文 时间:
2019-09-09 22:35:24
阅读次数:
106
树状数组:单点修改,区间查询 树状数组:区间修改,单点查询 树状数组:区间修改,区间查询 二维树状数组: 单点修改,区间查询 二维树状数组: 区间修改,区间查询 ...
分类:
编程语言 时间:
2019-09-09 10:24:44
阅读次数:
81
树状数组常数比线段树小很多啊……还好写……有必要总结一下。 单点修改,区间查询 不废话,代码: cpp include using namespace std; int q,x,y; int n,m,a[500005],c[500005]; void update(int x,int k) { wh ...
分类:
编程语言 时间:
2019-09-08 20:33:14
阅读次数:
94
区间修改+区间查询(线段树板子题) 另外因为1e9内的数开5次根号必定为1或0,所以我们可以提前打表i<=sqrt[1e9], s[i]=sqrt(i)。这样每次改值不必再调用系统的sqrt; 另外这个题有两个坑点,m<=200000,n<=100000,用cout会爆t,还有HYSBZ是Ubunt ...
分类:
其他好文 时间:
2019-09-06 22:45:40
阅读次数:
113
那个校门外的树?你想多了 题目传送门 对于这样定值的区间修改 我们有一种叫做括号序列的方法 我们修改区间时 将其左端点l标记为左括号 右端点右括号 所以我们每次查询时 首先查找右端点左侧有多少个左括号 (即有多少区间起点) 再查找左端点左侧有多少个右括号(已经匹配了多少区间) 二者相减即可 为了维护 ...
分类:
其他好文 时间:
2019-09-04 19:09:18
阅读次数:
94
除法 "201709 5" 这道题有很多种方法来做,最常用的就是线段树和树状数组。 如果使用线段树来做,就会想到区间修改的update函数。但是这里可能会涉及到v是1或者a[j]是0的情况,所以用这种方法会超时,最多50分。 可以修改一下代码,使用点修改来做这道题。在main函数里面增加一个循环,用 ...
分类:
其他好文 时间:
2019-09-04 09:21:33
阅读次数:
73
树状数组题目(持续更新) $1.$ "树状数组 $1$ :单点修改,区间查询" $2.$ "树状数组 $2$ :区间修改,单点查询" $3.$ "树状数组 $3$ :区间修改,区间查询" 树状数组单点修改,区间查询和 $View$ $Code$ //省略头文件 using namespace std ...
分类:
编程语言 时间:
2019-08-30 23:31:19
阅读次数:
163
题面 $zhhx$讲过的题,拓展霍尔定理。 题解 考虑一个区间$[1..l]$,找到让它最紧张的$[r..n]$,这个操作我们用线段树实现,因为$r$越往左越宽裕,所以在一开始的时候,是一个递减的等差数列的形式。 然后线段树区间修改求最小值。 代码$WA$了几个点,应该是有点小锅的。要是有大佬看出来 ...
分类:
其他好文 时间:
2019-08-28 22:22:24
阅读次数:
95