
CDQ分治
PH_2002
这个作者很懒,什么都没留下…
展开
-
三维偏序
前言怕自己忘,给自己留一个板子 以下代码均为洛谷【模板】三维偏序代码树套树先排序。 第一层树是一个树状数组。 第二层是一个线段树。 排完序后,枚举i,查询b小于自己的数所建的树,这一层通过树状数组快速枚举。 在线段树内二分找c小于自己的数.code#include<bits/stdc++.h>using namespace std;inline...原创 2018-08-03 22:03:52 · 555 阅读 · 0 评论 -
动态逆序对1
前言容易写挂(对于新手与蒟蒻)题面洛谷;solCDQ 如果按照三维偏序那样求,那么会漏掉一些情况。所以要跑两遍cdq。 两遍CDQ又会有一个问题,就是判等于的问题。第一遍CDQ第三维判等于,第二遍判不等于.code#include<bits/stdc++.h>#define LL long longusing namespace std;inl...原创 2018-08-04 16:09:50 · 245 阅读 · 0 评论 -
Mokia【题解】
前言刚开始开心的二维树状数组(真裸),后面发现他在故意卡树状数组(W有200w)离散化都不行. 所以~~开心~~CDQ。题面戳一下就好了。吐槽特意上网搜了一下mokia,发现是盗版nokia。这年头,洛基亚还有盗版,盗版比正版还火,都用来出题solCDQ除了能用来解决N维偏序以外,好像就没什么了,所以转换成三位偏序就好了。 具体来说就是,对于加人这种操作,记一下加的...原创 2018-08-05 07:38:22 · 296 阅读 · 0 评论 -
稻草人【题解】
前言网上代码各种各样的都可以AC,但关于判断横(纵)坐标相同是否构成矩形这一点各有不同。实际上,题目数据没有横坐标标或者纵坐标相同的情况,所以放心AC。solCDQ分治都看得出来。反正按纵坐标分为上下两层,然后考虑上对下的贡献。由于不能跨点,研究一个性质放在单调队列里就行了。 比普通分治还是多一个思维.提高组T1难度吧code#include<bits/stdc++.h...原创 2018-08-05 21:47:02 · 414 阅读 · 0 评论 -
货币兑换【题解】
题面戳。 大意:一开始你只有一些钱.你可以用你的所有的钱去买a、b两种东西.你也可以用所有的a、b两种东西去换成钱.所以在一种情况下,你的手里只有钱或者a、b两种东西. 每一天a,b都有自己的价值,买入a,b时,都有一个固定的比值.也就是说,一定量的钱在某一天就对应了一定量的东西. 每一天的操作不限次数.sol如果你知道这是一道斜率优化dp,那么就很简单了. 列出式子发现,...原创 2018-08-08 17:23:28 · 882 阅读 · 0 评论