P3810 三维偏序(陌上花开) CDQ分治模板题 第一维直接排序,第二维用分治,第三维用树状数组 ...
分类:
其他好文 时间:
2020-03-11 01:13:00
阅读次数:
49
莫队?又或是树状数组吧。卡莫队,还放莫队题目集,玩心态呀:1.5小时 cf:2小时 软件工程:2小时 英语单词:1小时 复习了C++12章,看了13章一半左右:https://www.cnblogs.com/yrz001030/p/12453076.html 3.5个小时 #include"stdi ...
分类:
其他好文 时间:
2020-03-10 09:13:08
阅读次数:
62
Binary Indexed Tree的作用 Binary Indexed Tree(BIT)现多用于高效计算数列的前序和,区间和。它可以在O(logn)的时间得到任意的前序和(prefix sum)。如一个array[2,5,-1,3,6],要计算第2个元素到第4个元素的和:5+-1+3=7。 B ...
分类:
编程语言 时间:
2020-03-10 01:41:19
阅读次数:
57
有 $n$ 个询问串 $S_i$,有一个初始为空的字符串集合 $T$,接下来有 $q$ 个操作,每次向集合中添加一个字符串,或给定 $x$ 询问集合中有多少个字符串包含 $S_x$ Solution 考虑对 $S_i$ 建立 ACAM,建出 $fail$ 树,一个点发生匹配,则需要修改它到根的链,询 ...
分类:
编程语言 时间:
2020-03-08 17:24:36
阅读次数:
65
[toc] 涵盖知识点:思维、树状数组。 比赛链接: "传送门" "A Even Subset Sum Problem" 题意: 找一个子序列使得和为偶数 题解: 选一个偶数或者两个奇数。 Accept Code: "E Instant Noodles" "F Reality Show" ...
分类:
其他好文 时间:
2020-03-08 14:10:17
阅读次数:
59
hdu 1166排兵布阵 单点修改+区间查询的树状数组的应用: 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef unsigned int ui; 4 typedef long long ll; 5 typedef unsigned ...
分类:
编程语言 时间:
2020-03-07 20:41:47
阅读次数:
88
支持区间修改的树状数组 原理 对于一个数组$a$,以及$a$的差分$c$,显然有$c[i]=a[i] a[i 1]$ 那么对于数组a的前缀和有 $\sum_{i=1}^n{a_i}=c[1]+(c[1]+c[2])+...(c[1]+c[2]+...+c[n])$ 进一步的: $\sum_{i=1} ...
分类:
编程语言 时间:
2020-03-04 09:31:30
阅读次数:
67
"原题" 该题涉及树状数组又一串操作: ① 区间修改 运用差分的思想,我们新建了一个数组b,初始化为零,对于每个指令"C l r d",我们只需将其转化为以下操作: 1.把b[l]加上d 2.再把b[r+1]减去d 做了这题,发现自己代码能力好差,找bug找了好久。 这题用了内联函数,发现也没快多少 ...
"原题" 这是一道基于树状数组基本操作的板子题。 本题涉及到树状数组几个基本操作: ① 单点查询 ② 单点修改 ...
分类:
其他好文 时间:
2020-03-02 17:40:27
阅读次数:
68
我们知道对一列数进行区间或单点加减,乘除和区间求值等操作可以用线段树或树状数组 那么,如何对带权树上一条路径中的数进行这样的操作呢? 此时就用到了线段树的树上版——树链剖分 ...
分类:
其他好文 时间:
2020-03-02 09:13:23
阅读次数:
54