自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

XSamsara的博客 AFO

XCW的博客

  • 博客(34)
  • 资源 (2)
  • 收藏
  • 关注

原创 ZJOI2019游记——一场颓废之旅

ZJOI2019游记Day0又是颁奖大会,但是,显然身为蒟蒻的我只能在台下看看,浪费了半个小时QAQ。镇海中学给人的感觉不是很大,可能是建筑多吧。但是,说实话,饭菜是这几次比赛中次好吃的(还是衢州二中食堂好吃)。Day1上午镇海的双省队dalaoLYX将课,emmm《具体数学》,一点不想说话。下午kcz的杂题选讲,还是头昏眼花。不过感觉比上午好。然后就是试机,虽然镇海电脑显示器很**...

2019-03-27 19:19:27 682

原创 BZOJ1296: [SCOI2009]粉刷匠【DP】

1296: [SCOI2009]粉刷匠这道SB题因为我题目看错,变成了一道毒瘤题,然后到现在才做。对于每一行DP,然后对于所有列DP就可以了。#include<cstdio>#include<algorithm>using namespace std;int n,m,T,g[55][2505],f[55][55][2505],Sum[2][55][55];ch...

2019-03-23 11:30:54 127

原创 BZOJ3925: [Zjoi2015]地震后的幻想乡【状压DP】

3925: [Zjoi2015]地震后的幻想乡我们定义f[i][j]f[i][j]f[i][j]表示当前点集状态为iii,连接了jjj条边,不连通的方案数g[i][j]g[i][j]g[i][j]表示当前点集状态为iii,连接了jjj条边,连通的方案数显然f[i][j]+g[i][j]=(cnt[i]j)f[i][j]+g[i][j]=(^j_{cnt[i]})f[i][j]+g[i][j...

2019-03-22 08:23:01 194

原创 BZOJ3534: [Sdoi2014]重建【变元矩阵树定理】

3534: [Sdoi2014]重建变元矩阵树定理邻接矩阵中是可以带权的,wijwijwij表示i,ji,ji,j的边权,eieiei表示边。定义 G(i,j)=G(j,i)=wijG(i,j)=G(j,i)=wijG(i,j)=G(j,i)=wij,令 G(i,i)=−∑j≠iG(i,j)G(i,i)=−∑_{j≠i}G(i,j)G(i,i)=−∑j̸​=i​G(i,j)那么n−1n−1...

2019-03-21 19:30:10 198

原创 BZOJ4574: [Zjoi2016]线段树【DP】

4574: [Zjoi2016]线段树这个DP有点玄学,F[w][i][L][R]F[w][i][L][R]F[w][i][L][R]表示第iii轮min(a[i],i∈[L,R])≤w&lt;min(a[L−1],a[R+1])min(a[i],i\in[L,R])\le w &lt;min(a[L-1],a[R+1])min(a[i],i∈[L,R])≤w<min(a[...

2019-03-21 17:53:25 209

原创 BZOJ4573: [Zjoi2016]大森林【LCT+扫描线】

4573: [Zjoi2016]大森林又是一道神仙毒瘤题,我们可以将询问放到最后,这样就可以用扫描线搞了,对于第iii棵树,可以从第i−1i-1i−1棵树继承过来,所以我们可以建一棵LCT来维护。但是这题的难点是1操作,对于1操作我们建虚点,让0操作的点连向输入时间最近的虚点,然后虚点之间连边(i,i−1)(i,i-1)(i,i−1)。每次遇到1操作,断开这个操作原来的虚边,连向实际的节点。但...

2019-03-21 07:25:13 161

原创 BZOJ1543: 生成树计数【DFS+并查集】

1543: 生成树计数首先我们知道最小生成树的两个性质。1.相同边权的出现次数相同。2.相同边权的连通性相同。所以我们可以直接DFS枚举相同的边权用了哪些,然后并查集撤销就可以了。快的飞起。#include<cstdio>#include<algorithm>using namespace std;const int MAXN=50005,MAXM=100...

2019-03-20 07:23:29 171

原创 BZOJ4596: [Shoi2016]黑暗前的幻想乡【矩阵树定理】

4596: [Shoi2016]黑暗前的幻想乡考虑矩阵树定理,但是不能解决十分选择了n-1个公司,所以我们可以容斥,总方案数-一个公司不选+两个公司不选-…#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int MOD=1e9+7;int n...

2019-03-19 18:54:38 107

原创 BZOJ4031: [HEOI2015]小Z的房间【矩阵树定理】

4031: [HEOI2015]小Z的房间裸的矩阵树定理。#include<cstdio>#include<algorithm>using namespace std;const int MOD=1e9;int n,m,cnt,Ans,mp[105][105],a[105][105];char ch[15];void Add(int x,int y){a[x]...

2019-03-19 17:05:49 103

原创 BZOJ1568: [JSOI2008]Blue Mary开公司【李超线段树】

1568: [JSOI2008]Blue Mary开公司【李超线段树】又是一道板子题,不过要注意的是,如果当前为负数的话输出0。#include<cstdio>#include<algorithm>using namespace std;const int MAXN=100005;struct Seg{double K,B;bool id;double f(in...

2019-03-19 16:25:15 165

原创 BZOJ3165: [Heoi2013]Segment【李超线段树】

3165: [Heoi2013]Segment李超线段树板子题。对一次函数进行分治处理。#include<cstdio>#include<algorithm>#define EXP 1e-8#define N9 1000000000using namespace std;const int MAXN=100005;struct Seg{ double K...

2019-03-19 08:08:09 136

原创 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 1380

原创 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 222

原创 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&amp;lt;...

2019-03-18 15:04:46 207

原创 BZOJ4237: 稻草人【CDQ】

4237: 稻草人我们按照y分治,分成上下两部分,然后将x排序,用单调栈维护个数就可以了。#include&lt;cstdio&gt;#include&lt;algorithm&gt;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 192

原创 BZOJ3262: 陌上花开【CDQ三维偏序】

3262: 陌上花开一道求三维偏序的裸题。第一维排序。第二维二路归并,此时我们已经保证了左边一半的元素都小于等于右边一半。第三维树状数组求逆序对。#include&lt;cstdio&gt;#include&lt;algorithm&gt;using namespace std;const int MAXN=100005;int n,m,tot;struct xcw{ int...

2019-03-18 09:21:36 143

原创 BZOJ3237: [Ahoi2013]连通图【线性基】

3237: [Ahoi2013]连通图我们将每一条非树边异或上一个权值,覆盖树边。每次询问这些删除的边是否可以异或为0,线性基就可以了。为什么这样可以请看这篇杜教的证明UOJ#include&lt;cstdio&gt;using namespace std;const int MAXN=100005,MAXE=500005;int n,m,Ans=0,fa[MAXN],Val[MAX...

2019-03-17 19:20:22 170

原创 BZOJ3563: DZY Loves Chinese【线性基】

3563: DZY Loves Chinese II我们将每一条非树边异或上一个权值,覆盖树边。每次询问这些删除的边是否可以异或为0,线性基就可以了。为什么这样可以请看这篇杜教的证明UOJ#include&amp;lt;cstdio&amp;gt;using namespace std;const int MAXN=100005,MAXE=500005;int n,m,Ans=0,fa[MAXN],...

2019-03-17 18:58:09 164

原创 BZOJ3569: DZY Loves Chinese II【线性基】

3569: DZY Loves Chinese II我们将每一条非树边异或上一个权值,覆盖树边。每次询问这些删除的边是否可以异或为0,线性基就可以了。为什么这样可以请看这篇杜教的证明UOJ#include&lt;cstdio&gt;using namespace std;const int MAXN=100005,MAXE=500005;int n,m,Ans=0,fa[MAXN],...

2019-03-17 18:57:05 176

原创 BZOJ3527: [Zjoi2014]力【FFT】

3527: [Zjoi2014]力先除去qiq_iqi​,令g(i)=1i2g(i)=\frac{1}{i^2}g(i)=i21​式子变成Ei=∑j=1i−1qi∗g(i−j)−∑j=i+1nqi∗g(j−i)E_i=\sum_{j=1}^{i-1} q_i*g(i-j)-\sum_{j=i+1}^nq_i*g(j-i)Ei​=∑j=1i−1​qi​∗g(i−j)−∑j=i+1n​qi​∗g(j...

2019-03-17 16:20:03 108

原创 BZOJ4503: 两个串【FFT】

4503: 两个串【题目描述】传送门【题解】我们设置一个函数,F(j)=∑i=1∣T∣T(i)∗(S(i+j)−T(i))2F(j)=\sum_{i=1}^{|T|} T(i)*(S(i+j)-T(i))^2F(j)=∑i=1∣T∣​T(i)∗(S(i+j)−T(i))2为什么要这么设置呢,我们发现F(x)=0F(x)=0F(x)=0就是一个匹配的解,平方是为了方便计算,绝对值就不能进行...

2019-03-16 08:13:59 113

原创 BZOJ3992: [SDOI2015]序列统计【NTT+原根+DP】

3992: [SDOI2015]序列统计【题目描述】传送门【题解】我们可以写出DP式,F[i][j∗a[k]]+=F[i−1][j]F[i][j*a[k]]+=F[i-1][j]F[i][j∗a[k]]+=F[i−1][j]初始状态F[0][0]=1F[0][0]=1F[0][0]=1对于上式我们很难处理,如果我们可以将相乘改成相加,就可以套NTT了。我们设ggg为mod m意义下的...

2019-03-15 15:44:51 185

原创 BZOJ3998: [TJOI2015]弦论【SAM】

3998: [TJOI2015]弦论【题目描述】传送门【题解】先用SAM算出不同子串个数,然后二分查找就可以了(像平衡树一样的查找第K小方式)【代码如下】#include&lt;cstdio&gt;#include&lt;cstring&gt;using namespace std;const int MAXN=5e5+5;int n,TT,K,Sum[MAXN&lt;&lt;...

2019-03-14 20:49:40 176

原创 BZOJ4527: K-D-Sequence【线段树+单调栈】

4527: K-D-SequenceDescription我们称一个数列为一个好的k-d数列,当且仅当我们在其中加上最多k个数之后,数列排序后为一个公差为d的等差数列。你手上有一个由n个整数组成的数列a。你的任务是找到它的最长连续子串,使得满足子串为好的k-d数列。Input第一行包含三个用空格隔开的整数n,k,d(1≤n≤2∗105;0≤k≤2∗105;0≤d≤109)n,k,d(1 ...

2019-03-13 20:16:30 179

原创 BZOJ2419: 电阻【高斯消元+基尔霍夫定律】

2419: 电阻Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 401 Solved: 178Description你突破了无数艰难险阻,终于解决了上面那道题,众神犇瞬间就震惊了。他们发现居然有人可以把那种非人类做的题目做出来。他们一致同意,最后这道题不能再出数学题了。考虑到两位小盆友的状态,他们决定考考你的初中物理水平。一个电路板,有...

2019-03-13 08:04:51 400 1

原创 BZOJ5018: [Snoi2017]英雄联盟【01背包】

5018: [Snoi2017]英雄联盟【题目描述】传送门【题解】我们根据价值来背包就可以了。【代码如下】#include&lt;cstdio&gt;#include&lt;algorithm&gt;using namespace std;const int MAXC=250000,MAXN=200;int n,Alm,K[MAXN],C[MAXN];long long F[M...

2019-03-12 20:27:02 122

原创 BZOJ4036: [HAOI2015]按位或【FWT+期望】

4036: [HAOI2015]按位或Time Limit: 10 Sec Memory Limit: 256 MBSec Special JudgeSubmit: 822 Solved: 516Description刚开始你有一个数字0,每一秒钟你会随机选择一个[0,2n-1]的数字,与你手上的数字进行或(c++,c的|,pascal的or)操作。选择数字i的概率是p[i]。保证0...

2019-03-12 19:56:27 122

原创 BZOJ2843: 极地旅行社【LCT+并查集】

2843: 极地旅行社【题目描述】传送门【题解】就是裸的LCT,只要维护Splay中节点的和就可以了,连通性可以用并查集判。【代码如下】#include&lt;cstdio&gt;#include&lt;algorithm&gt;using namespace std;const int MAXN=30005;int n,Q,a[MAXN],fa[MAXN];char ch[M...

2019-03-12 16:27:18 103

原创 LCT动态树【史上最精简易懂的LCT讲解】

Link Cut Tree(动态树,LCT)介绍首先简单介绍一下Link Cut Tree,将一棵树分成轻边和重链,类似于树链剖分,但是树剖是静态的。LCT可以用于动态的加点和删点,甚至还可以换根。也就是LCT维护了一个动态的树。LCT中的每棵Splay都维护了一条重链(实际上是实链,这里统一讲重链)上的答案。多颗Splay连成一棵树,这棵Splay满足左儿子在树上的深度(这里深度指的是在数...

2019-03-12 13:24:19 1656 1

原创 BZOJ3669: [Noi2014]魔法森林【并查集+LCT】

3669: [Noi2014]魔法森林【题目描述】传送门【题解】我们发现只要记录这条路径上的最大值就可以了,那么我们可以强制其中一个为最大值,然后判断是否联通,更新答案(也就是将a排序,然后维护1到n中b的最大值就可以了)可以用LCT解决,考虑这个两个节点全部被加入,那么我们用这个b替换掉这条路径上最大的b,就可以了。【代码如下】#include&lt;cstdio&gt;#inc...

2019-03-12 07:30:00 120

原创 BZOJ3122: [Sdoi2013]随机数生成器【BSGS】

3122: [Sdoi2013]随机数生成器【题目描述】传送门【题解】我们对于题目中的式子变换一下形式,Xi+1+k=a(Xi+k)X_{i+1}+k=a(X_i+k)Xi+1​+k=a(Xi​+k)然后解出k=ba−1k=\frac{b}{a-1}k=a−1b​套上等比数列公式Xn=X1an−1+b(an−1−1)a−1\large X_n=X_1a^{n-1}+\frac{b(a^...

2019-03-11 11:15:47 118

原创 BZOJ5087: polycomp【bitset+分块】

5087: polycomp【题目描述】传送门【题解】首先, 注意到对于这里的mod 2的多项式的乘法, 我们很容易给出一个使用bitset的压位的算法.这样就能把复杂度给除掉一个32. 然而n3/32n^3/32n3/32还是比较大.注意到对于f(g(x))f(g(x))f(g(x)), 我们可以将它每10项每10项分别计算.预处理一下2102^{10}210关于g(x)g(x...

2019-03-11 07:25:16 140

原创 LibreOJ545. 「LibreOJ β Round #7」小埋与游乐场【网络流】

545. 「LibreOJ β Round #7」小埋与游乐场【题目描述】传送门【题解】网络流,我们发现lowbit之后相同的点连出的边是相同的,所以可以缩点。【代码如下】#include&lt;cstdio&gt;#include&lt;cstring&gt;#include&lt;iostream&gt;#include&lt;algorithm&gt;using name...

2019-03-07 20:12:16 147

原创 BZOJ2725: [Violet 6]故乡的梦【线段树+最短路】

2725: [Violet 6]故乡的梦【题目描述】传送门【题解】我们会发现,如果我们要走x-y这条边,一定会走一段最短路到x1(这里的最短路表示(S,T)的最短路),然后走一段非最短路到x,从y走一段非最短路到最短路上的点y1,然后走一段最短路到T。所以这条边影响的最短路为x1到y1这一段,所以我们之间线段树维护这个区间最小值。【代码如下】#include&lt;cstdio&gt;...

2019-03-06 18:01:37 258

COCI​ ​2017/2018 Round​ ​#1, ​ ​October ​ ​14th, ​ ​2017 翻译试卷 标程及题解

COCI​ ​2017/2018 Round​ ​#1, ​ ​October ​ ​14th, ​ ​2017 翻译试卷 标程及题解

2018-01-14

COCI​ ​2017/2018 Round​ ​#1, ​ ​October ​ ​14th, ​ ​2017 翻译试卷

COCI​ ​2017/2018 Round​ ​#1, ​ ​October ​ ​14th, ​ ​2017 翻译试卷

2017-12-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除