【前言】 作为一个什么数据结构都不会只会CDQ分治和分块的蒟蒻,面对区间加&区间求和这么难的问题,怎么可能会写线段树呢 于是,用CDQ分治解决区间加&区间求和这篇习作应运而生 【Part.I】区间加&区间求和的数据结构做法 【一】线段树 裸题... 1141ms #include <iostream ...
分类:
其他好文 时间:
2017-03-18 00:45:49
阅读次数:
237
练一练cdq分治 需要熟练的东西:堆,树链剖分,tarjan及其它一些图论算法,网络流,kmp,字符串哈希,线段树主席树,树状数组 需要学的东西:lct,后缀数组,AC自动机,平衡树 ...
分类:
其他好文 时间:
2017-03-16 20:37:58
阅读次数:
136
这题好神啊..好神啊...好神啊... 首先列出N2的DP方程较易. 从DP方程很容易看出来是斜率优化. 如何进一步优化? 考虑对当前点以上的链建立一个下凸包. 维护凸包就可以,但不是很好写. 观察到方程可以必然由它的祖先节点转移.很像Cash那道题. 尝试CDQ分治,每次先递归处理根所在的子树. ...
分类:
其他好文 时间:
2017-03-13 19:06:18
阅读次数:
230
CDQ分治 CDQ(陈丹琦)分治是一种特殊的分治方法。 它只能处理非强制在线的问题。 CDQ分治在维护一些动态的凸包、半平面交问题也有一定应用,然而本渣渣并不会。 CDQ分治基于时间分治,整体二分基于答案分治。 步骤 1:将操作按照某个关键字排序 2;算出[L,mid]对[mid+1,R]的贡献 3 ...
分类:
其他好文 时间:
2017-03-12 12:50:54
阅读次数:
142
http://cogs.pro/cogs/problem/problem.php?pid=1752 (题目链接) 题意 给出$n*n$的棋盘,单点修改,矩阵查询。 Solution 离线以后CDQ分治。每一层按照$Y$排序,然后询问用前缀和拆成$4$个,树状数组维护一下就可以了。 细节 ? 代码 ...
分类:
其他好文 时间:
2017-03-07 21:39:48
阅读次数:
231
先小结一下吧 主要为个人理解 整体二分 理解 $zyz:$整体二分是在权值上进行$CDQ$分治 我觉得更像是说$:$整体二分是在答案上进行$CDQ$分治 整体二分是二分答案在数据结构题上的扩展 因为数据结构题二分的答案通常是第几个操作之后,需要进行一些操作(预处理)之后才能判断,所以每次询问二分还不 ...
分类:
其他好文 时间:
2017-02-27 00:58:38
阅读次数:
153
传送门 题意:三维最长不上升子序列以及每个元素出现在最长不上升子序列的概率 $1A$了好开心 首先需要从左右各求一遍,长度就是$F[0][i]+F[1][i]-1$,次数就是$G[0][i]*G[1][i]$ 我们可以用一些转换来简化代码 反转之后变成$LIS$,然后再反转并且$x,y$取反还是$L ...
分类:
编程语言 时间:
2017-02-25 21:09:09
阅读次数:
205
传送门 给定一个有n个元素的序列,元素编号为1~n,每个元素有三个属性a,b,c,求序列中满足i<j且ai<aj且bi<bj且ci<cj的数对(i,j)的个数。 对于100%的数据,1<=n<=50000,保证所有的ai、bi、ci分别组成三个1~n的排列。 $CDQ$分治套$CDQ$分治也不是很难 ...
分类:
其他好文 时间:
2017-02-25 19:47:51
阅读次数:
260
传送门 当然了WF的题uva hdu上也有 你的公司获得了一个厂房N天的使用权和一笔启动资金,你打算在这N天里租借机器进行生产来获得收益。可以租借的机器有M台。每台机器有四个参数D,P,R,G。你可以在第D天花费P的费用(当然,前提是你有至少P元)租借这台机器,从第D+1天起,操作机器将为你产生每天 ...
分类:
系统相关 时间:
2017-02-25 16:49:41
阅读次数:
254