
CDQ分治
文章平均质量分 59
mis_deer
Make_myself.
展开
-
[Uva 11990] "Dynamic" Inversion (CDQ分治入门)
Uva - 11990 动态逆序对,求删除一个点之前序列中逆序对的个数 首先倒过来看这个问题,把点先全部删掉 然后从最后一个点开始倒着往数列中加点 求加完这个点逆序对的变化CDQ分治做法把删除时间看作 t,下标看作 x,值看作 y 然后对 x排序,对 t偏序,用树状数组维护 y 具体来说就是对于每个点 (t0,x0,y0)(t_0, x_0, y_0) 先统计 t<t0,x<x0,y>原创 2016-05-24 17:44:06 · 702 阅读 · 0 评论 -
[HDU 5412] CRB and Queries (整体二分)
HDU - 5412 动态区间第 K小 很经典的题,可以用线段树套平衡树在线解决 但是这题貌似卡树套树,况且我也不会手写平衡树可以使用“整体二分”的分治思想解决将每个数据处理成 (x,y,v)(x, y, v)的三元组 其中 xx为这个数的下标,yy为大小,vv为 1时表示添加,-1表示删除 开始时读入 NN个数据,进行 NN次添加操作 修改操作视作删除这个数,然后在原位置再添加一个数这原创 2016-07-18 20:29:41 · 341 阅读 · 0 评论 -
[HDU 5730] Shell Necklace (FFT+CDQ分治)
HDU - 5730 给定一段长度为 NN的序列,长度为 ii的连续一段有 aia_i种染色方案 问一共有多少中染色方案,其中 N≤105N \le 10^5 一个很显然的dp方程,设 dp[i]dp[i]为前 ii个的染色方案 dp[i]=∑j=1ia[j]∗dp[i−j]dp[i] = \displaystyle\sum_{j=1}^{i} a[j]*dp[i-j] 这很显然就是一原创 2016-08-13 13:32:42 · 656 阅读 · 0 评论