CDQ
XSamsara
AFO
展开
-
BZOJ3262: 陌上花开【CDQ三维偏序】
3262: 陌上花开一道求三维偏序的裸题。第一维排序。第二维二路归并,此时我们已经保证了左边一半的元素都小于等于右边一半。第三维树状数组求逆序对。#include<cstdio>#include<algorithm>using namespace std;const int MAXN=100005;int n,m,tot;struct xcw{ int...原创 2019-03-18 09:21:36 · 172 阅读 · 0 评论 -
BZOJ4237: 稻草人【CDQ】
4237: 稻草人我们按照y分治,分成上下两部分,然后将x排序,用单调栈维护个数就可以了。#include<cstdio>#include<algorithm>using namespace std;const int MAXN=200005;int n,stk1[MAXN],Top1,stk2[MAXN],Top2;long long Ans;struct ...原创 2019-03-18 09:48:15 · 225 阅读 · 0 评论 -
BZOJ3745: [Coci2015]Norma【CDQ】
3745: [Coci2015]Norma我们对于a序列分治,枚举左端点(从右往左)维护MINMINMIN和MAXMAXMAX,右端点同时更新两个指针j,k,表示a[mid+1,j]≤MAXa[mid+1,j] \le MAXa[mid+1,j]≤MAX和MIN≤a[mid+1,k]MIN\le a[mid+1,k]MIN≤a[mid+1,k]。于是右半边被分成三份。这里设j&lt;...原创 2019-03-18 15:04:46 · 223 阅读 · 0 评论 -
BZOJ1176: [Balkan2007]Mokia【CDQ+树状数组】
1176: [Balkan2007]Mokia将询问分成四部分,然后CDQ分治+树状数组就可以了,三个关键字为{t,x,y}#include<cstdio>#include<algorithm>using namespace std;const int MAXN=200005;struct xcw{int x,y,f,t,p;}a[MAXN],t[MAXN];...原创 2019-03-18 17:59:47 · 239 阅读 · 0 评论 -
BZOJ2716: [Violet 3]天使玩偶【CDQ+树状数组】
2716: [Violet 3]天使玩偶我们将问题分成四部分讨论,对于左下角、右下角、左上角、右上角四个方向分别CDQ。用树状数组维护最大值就可以了。#include<cstdio>#include<cstring>#define min(x,y) ((x)>(y)?(y):(x))#define max(x,y) ((x)<(y)?(y):(x))...原创 2019-03-18 19:13:20 · 1408 阅读 · 0 评论 -
BZOJ4553: [Tjoi2016&Heoi2016]序列【CDQ+DP】
4553: [Tjoi2016&Heoi2016]序列我们可以得出递推式dp[i]=dp[j]+1,j<i,a[j]<=L[i],R[j]<=a[i]dp[i]=dp[j]+1,j<i,a[j]<=L[i],R[j]<=a[i]dp[i]=dp[j]+1,j<i,a[j]<=L[i],R[j]...原创 2019-07-27 11:27:16 · 126 阅读 · 0 评论 -
【Codeforces】848C. Goodbye Souvenir【CDQ】
【Codeforces】848C. Goodbye Souvenir将头尾之差看成各位差。设pre[x]pre[x]pre[x]为与xxx同色的上一个位置。那么答案就是∑i=lr[l≤pre[i]]∗(i−pre[i])\sum_{i=l}^{r} [l \le pre[i]]*(i-pre[i])∑i=lr[l≤pre[i]]∗(i−pre[i])也就是∑i=1r[l≤pre[i]]∗...原创 2019-08-24 18:44:56 · 558 阅读 · 0 评论 -
BZOJ2961: 共点圆【二进制分组|CDQ+凸包+三分】
2961: 共点圆根据圆方程(x−x0)2+(y−y0)2≤(x02+y02)2(x-x_0)^2+(y-y_0)^2 \le (x_0^2+y_0^2)^2(x−x0)2+(y−y0)2≤(x02+y02)2解得x02+y02≤2xx0+2yy0x_0^2+y_0^2\le 2xx_0+2yy_0x02+y02≤2xx0+2yy0右边项可以看成(2x,x0)⋅(2y,y0)...原创 2019-09-09 19:55:32 · 186 阅读 · 0 评论