自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

苟为蒟蒻又何妨

DianPiBoZhuBaoFuSheHui

  • 博客(57)
  • 资源 (1)
  • 收藏
  • 关注

原创 咕咕列表

只是一个博主用来查看自己学习计划进度的咕咕列表而已:专题练习:数学数论 莫比乌斯反演 单位根反演 crt,excrtcrt,excrtcrt,excrt 各种筛法多项式相关 生成函数 fwt,fst,fmtfwt,fst,fmtfwt,fst,fmt组合数学 lucas,exlucaslucas,exlucaslucas,exlucas 普通容斥,min−max...

2019-02-14 22:53:46 377 1

原创 bzoj3527: [Zjoi2014]力(fft)

传送门fftfftfft菜题。题意简述:给一个数列aia_iai​,对于i=1→ni=1\rightarrow ni=1→n求出ansi=∑i<jai(i−j)2−∑i>jai(i−j)2ans_i=\sum_{i<j}\frac{a_i}{(i-j)^2}-\sum_{i>j}\frac{a_i}{(i-j)^2}ansi​=∑i&lt...

2019-02-28 21:46:20 153

原创 HAOI2018 简要题解

奇怪的背包发现就是求一个n+1n+1n+1元方程组a1x1+a2x2+⋅˙⋅⋅+anxn+an+1mod=wa_1x_1+a_2x_2+\dot\cdot\cdot\cdot+a_nx_n+a_{n+1}mod=wa1​x1​+a2​x2​+⋅˙⋅⋅+an​xn​+an+1​mod=w的解数,两个解被认为是不同的当且aia_iai​非零的位置iii组成的集合不同。于是可以按照exgcdexgc...

2019-02-28 21:41:37 260

原创 bzoj4556: [Tjoi2016&Heoi2016]字符串(二分答案+sam+线段树合并)

传送门题意:给一个字符串SSS。有mmm次询问,每次给四个参数a,b,c,da,b,c,da,b,c,d,问s[a...b]s[a...b]s[a...b]的所有子串和s[x...y]s[x...y]s[x...y]的最长公共前缀是多少。思路:先翻转字符串转化为求最长公共后缀。设现在求s[a...b]s[a...b]s[a...b]的所有子串和s[x...y]s[x...y]s[x......

2019-02-27 21:08:49 189

原创 bzoj4311: 向量(线段树分治+凸包)

传送门题意:支持插入一个向量,删去某一个现有的向量,查询现有的所有向量与给出的一个向量的点积的最大值。思路:考虑线段树分治。先对于每个向量处理出其有效时间放到线段树上面,然后考虑查询:对于两个已有的向量(u1,v1)(u_1,v_1)(u1​,v1​)和(u2,v2)(u_2,v_2)(u2​,v2​),假设给出的向量为(x0,y0)(x_0,y_0)(x0​,y0​)u1&g...

2019-02-26 21:07:42 269

原创 FJOI2018 部分题解

领导集团问题考虑对每一个点暴力dpdpdp:fi,jf_{i,j}fi,j​表示iii为根的子树选出来的点集最小值不小于jjj的点集元素个数最大值。那么显然fi,j=∑max⁡{fv,k≥j}+1f_{i,j}=\sum\max\{f_{v,k\ge j}\}+1fi,j​=∑max{fv,k≥j​}+1直接上线段树合并来优化就完了。注意要打懒标记代码:#include<bits...

2019-02-26 21:00:24 318

原创 2018多省省队联测 部分题解

一双木棋我们把分割已选棋子和未选棋子的轮廓线状压一下就可以了。代码:include<bits/stdc++.h>#define ri register intusing namespace std;inline int read(){ int ans=0; char ch=getchar(); while(!isdigit(ch))ch=getcha...

2019-02-26 20:30:59 181

原创 TJOI2018 简要题解

数学计算用线段树记录之前乘过的每一个数,作除法时把原本的乘数改成111即可。代码:#include<bits/stdc++.h>#define lc (p<<1)#define rc (p<<1|1)#define mid (T[p].l+T[p].r>>1)#define N 100005using namespace std;i...

2019-02-26 20:14:06 263

原创 CQOI2018 简要题解

破解D-H协议列个式子会发现是BSGSBSGSBSGS的模板题,直接码就是了。代码:#include<bits/stdc++.h>#include<tr1/unordered_map>#define ri register intusing namespace std;inline int read(){ int ans=0; char ch=...

2019-02-26 20:02:57 155

原创 bzo1038: [ZJOI2008]瞭望塔(半平面交)

传送门题意:给出一个nnn个点的轮廓,要求找一个高度最小的点使得它能够看见所有拐点。思路:之间建半平面交然后取半平面交上的每个交点和每个轮廓更新答案即可。代码:#include<bits/stdc++.h>#define ri register intusing namespace std;typedef long long ll;const int N=305;s...

2019-02-21 21:59:31 238

原创 bzoj2300: [HAOI2011]防线修建(set+凸包)

传送门题意:动态维护凸包周长。思路:见这篇求面积的吧反正都是一个套路。代码:#include<bits/stdc++.h>#define int long long#define ri register intusing namespace std;inline int read(){ int ans=0; bool f=1; char ch...

2019-02-21 21:57:07 189

原创 bzoj5317: [Jsoi2018]部落战争(凸包+Minkowski和)

传送门题意:qqq次询问把一个凸包整体加一个向量(x,y)(x,y)(x,y)之后是否与另外一个凸包相交。思路:转化一下发现只要会求A+B={v⃗=a⃗+b⃗∣a⃗∈A,b⃗∈B}A+B=\{\vec v=\vec a+\vec b|\vec a\in A,\vec b\in B\}A+B={v=a+b∣a∈A,b∈B}即可,这个要用到一个叫做MinkowskiMinkowskiMinkow...

2019-02-21 21:54:50 276

原创 bzoj1249: SGU277 HERO 动态凸包(set+凸包)

传送门题意:动态插入点,维护凸包面积。思路:用setsetset维护极角序来支持面积查询即可。然后注意选原点的时候要从初始三个点随机平均系数来避免精度误差。代码:#include<bits/stdc++.h>#define ri register llusing namespace std;typedef long long ll;inline ll read(){...

2019-02-21 21:49:43 541

原创 bzoj2829: 信用卡凸包(凸包)

传送门题意:给nnn个A∗BA*BA∗B的矩形,其中每个矩形的四个角被改造成了半径为rrr的四分之一 圆,问这些矩形的凸包周长。思路:考虑求出圆心的凸包周长然后加上一个整圆的周长,证明很简单,略掉。代码:#include<bits/stdc++.h>#define ri register intusing namespace std;const int N=10005;...

2019-02-21 21:46:44 205

原创 bzoj2739: 最远点(决策单调性+分治)

传送门题意简述:给一个N个点的凸多边形,求离每一个点最远的点。思路:先根据初中数学知识证明决策是满足单调性的,然后上分治优化即可。才不是因为博主懒得写二分+栈优化呢代码:#include<bits/stdc++.h>#define ri register intusing namespace std;inline int read(){ int ans=0;...

2019-02-21 21:43:24 248

原创 bzoj2655: calc(生成函数+拉格朗日插值)

传送门题意简述:问有多少数列满足如下条件:所有数在[1,A][1,A][1,A]之间。没有相同的数数列长度为nnn一个数列的贡献是所有数之积,问所有满足条件的数列的贡献之和。A≤1e9,n≤500A\le1e9,n\le500A≤1e9,n≤500思路:肯定不能枚举所有情况。我们先规定这个数列满足a1<a2<⋅˙⋅⋅<ana_1&a...

2019-02-19 14:16:29 311

原创 spoj GSS系列简要题解

文章目录GSS1GSS2GSS3GSS4GSS5GSS6GSS7GSS8[传送门](https://vjudge.net/problem#OJId=SPOJ&probNum=GSS&title=&source=&category=all)这个GSSGSSGSS系列全部是跟子段有关的数据结构菜题。于是来水一篇博客。GSS1传送门题意简述:

2019-02-19 00:24:15 315

原创 spoj Query on a tree VII(链分治)

传送门跟QTREE6QTREE6QTREE6神似,改成了求连通块里的最大值。于是我们对每条链开一个heapheapheap维护一下即可。MDMDMD终于1A1A1A链分治了。代码:#include<bits/stdc++.h>#define ri register int#define fi first#define se secondusing namespace ...

2019-02-17 14:28:30 325

原创 spoj Query on a tree VI(链分治)

传送门题意简述:给你一棵nnn个黑白点的树,支持改一个点的颜色,询问跟某个点颜色相同的连通块大小。思路:还是链分治 233记fi,0/1f_{i,0/1}fi,0/1​表示iii的所有颜色为0/10/10/1的轻儿子在它们子树中颜色相同的连通块大小。然后这个可以用来询问子树里的答案,但是要询问的东西是针对全局的。因此我们沿着重链往上跳更新答案,直到某条链中有点跟要问的颜色不一样。即...

2019-02-17 14:08:06 215

原创 spoj Query on a tree V(链分治)

传送门题意简述:给你一棵nnn个黑白点的树,初始全是黑点。现在支持给一个点换颜色或者求整颗树中离某个点最近的白点跟这个点的距离。思路:考虑链分治维护答案,每个链顶用一个堆来维护答案,然后对于每条重链开一棵线段树维护子树里所有白点到线段树最左/右端点的最短距离。然后瞎更新查询即可。代码:#include<bits/stdc++.h>#define ri registe...

2019-02-17 10:35:38 274

原创 spoj Query on a tree IV(链分治)

传送门题意简述:捉迷藏强化版(带有边权,可以为负数)思路:好吧这次我们不用点分树,我们用听起来更屌的链分治。直接把树剖成若干条重链,这样保证从任意一个点跳到根节点是不会跳超过logloglog条重链的。然后用上链分治的常规套路:分是否在链上面的信息讨论,并将整条链的值全部统计在链顶,这样修改的时候沿着链往上跳修改logloglog次即可。那么针对这道题可以怎么瞎搞维护呢?考虑对每个...

2019-02-16 17:13:32 213

原创 bzoj5466: [Noip2018]保卫王国(链分治+ddp)

传送门题意简述:mmm次询问,每次规定两个点必须选或者不选,求树上的带权最小覆盖。思路:考虑链分治+ddpddpddp仍然是熟悉的套路,先考虑没有修改的状态和转移:令fi,0/1f_{i,0/1}fi,0/1​表示强制iii不选/选时iii为根子树的带权最小覆盖。显然有:fi,0=∑v∈sonfv,1f_{i,0}=\sum_{v\in son}f_{v,1}fi,0​=∑v∈s...

2019-02-16 09:59:53 537

原创 bzoj5210: 最大连通子块和(链分治+ddp)

传送门题意:支持单点修改,维护子树里的最大连通子块和。思路:扯皮:bzojbzojbzoj卡常差评。网上的题解大多用了跟什么最大子段和一样的转移方法。但是我们实际上是可以用矩阵转移的传统ddpddpddp写法来做这道题的。由于我推出来矩阵是3∗33*33∗3的因此常数巨大gggggg了,因此蒟蒻博主只能提供思路和一份TLETLETLE的代码。正题:一道考虑链分治+dpdpdp套...

2019-02-15 18:51:07 471

原创 codechef Favourite Numbers(二分+数位dp+ac自动机)

传送门题意:给444个整数L,R,K,nL,R,K,nL,R,K,n,和nnn个数字串,L,R,K,数字串大小≤1e18,n≤65L,R,K,数字串大小\le1e18,n\le65L,R,K,数字串大小≤1e18,n≤65问[L,R][L,R][L,R]中第KKK小的拥有nnn个数字串中至少一个串作为子串的数。思路:一看就要二分答案,现在考虑统计[L,R][L,R][L,R]中有多少个...

2019-02-15 15:37:51 194

原创 SGTtrick

SGTtrickBy 蒟蒻 ldxoiBy\ 蒟蒻\ ldxoiBy 蒟蒻 ldxoiChapter 1.关于线段树操作的一些分析我们知道,线段树有两个核心的函数pushdownpushdownpushdown和pushuppushuppushup。以及两类对于一段区间进行操作的函数updateupdateupdate和queryqueryquery...

2019-02-14 18:16:18 516 1

原创 codechef Chef at the Food Fair(线段树+泰勒展开)

传送门题意:现在有nnn个位置,每个位置上有一个值aia_iai​.要求支持如下两种操作:区间乘vvv求区间的(1−ai)(1-a_i)(1−ai​)之积思路:考虑转换式子:Ans=∏i=lr(1−ai)=e∑i=lrln(1−ai)Ans=\prod_{i=l}^r(1-a_i)=e^{\sum_{i=l}^rln(1-a_i)}Ans=∏i=lr​(1−ai​)=e∑i=l...

2019-02-14 18:13:23 312

原创 bzoj3944: Sum(杜教筛)

传送门题意:思路:直接上杜教筛。知道怎么推导就很简单了,注意预处理的范围。然后我因为预处理范围不对被zxyoi教育了(ldx你这个傻×两倍常数活该被卡TLE) 喜闻乐见代码:#include<bits/stdc++.h>#define ri register intusing namespace std;const int N=7500005,lim=750000...

2019-02-12 21:25:34 233

原创 bzoj5294: [Bjoi2018]二进制(线段树)

传送门题意简述:给出一个长度为nnn的二进制串。你需要支持如下操作:修改每个位置:1变0,0变1询问对于一个区间的子二进制串有多少满足重排之后转回十进制值为333的倍数(允许前导000)。思路:考虑一个xxx位的包含有yyy个111的二进制串,它是333的倍数当如下任意一个条件成立:yyy是偶数。yyy是大于111的奇数且x−y>=2x-y>=...

2019-02-12 17:13:15 408

原创 bzoj1568: [JSOI2008]Blue Mary开公司(线段树)

传送门题意简述:维护整体加一条线段,求单点极值。思路:直接上李超线段树维护即可。代码:#include<bits/stdc++.h>#define ri register intusing namespace std;typedef long long ll;typedef double db;const int N=1e5+5;const db eps=1e-...

2019-02-11 20:21:55 181

原创 bzoj3165: [Heoi2013]Segment(线段树)

传送门题意简述:要求支持两种操作:插入一条线段。询问与直线x=kx=kx=k相交的线段中,交点最靠上的线段的编号。思路:直接上李超线段树即可。代码:#include<bits/stdc++.h>#define ri register intusing namespace std;typedef long long ll;typedef double db;...

2019-02-11 19:44:09 247 1

原创 bzoj4818: [Sdoi2017]序列计数(矩阵快速幂优化dp)

传送门题意简述:问有多少长度为n的序列,序列中的数都是不超过m的正整数,而且这n个数的和是p的倍数,且其中至少有一个数是质数,答案对201704082017040820170408取模(n≤1e9,m≤2e7,p≤100)(n\le1e9,m\le2e7,p\le100)(n≤1e9,m≤2e7,p≤100)。思路:首先因为只需要是ppp的倍数,因此可以看成全局和对ppp取模为000方案数...

2019-02-11 12:45:45 257

原创 bzoj4767: 两双手(组合数学+容斥dp)

传送门题意简述:你要从(0,0)(0,0)(0,0)走到(ex,ey)(ex,ey)(ex,ey),每次可以从(x,y)(x,y)(x,y)走到(x+ax,y+ay)(x+ax,y+ay)(x+ax,y+ay)或者(x+bx,y+by)(x+bx,y+by)(x+bx,y+by),其中有nnn个障碍点问方案数,所有出现的值的绝对值≤500\le500≤500思路:从(0,0)(0,0)(0,...

2019-02-11 11:37:43 292

原创 Codeforces 1114 简要题解

文章目录A题B题C题D题E题F题传送门然而这场div2div2div2没有什么难度比较大的题A题传送门题意简述:三个人分别至少选x,y,zx,y,zx,y,z件物品,有三种物品数量分别为a,b,ca,b,ca,b,c,其中第一个人只能选第一种,第二个人不能选第三种,第三个人随意问能否满足三个人需求。思路:直接模拟即可。代码:#include<bits/stdc++.h&g...

2019-02-11 10:42:08 758

原创 Codeforces gym 102062 简要题解

文章目录A. Bob and BoBB. Vibranium GiftC. The Blood MoonD. Palindrome and ChocolateE. Jumpy RobotF. Special Birthday CardG. Ainum’s DelusionH. String GameI. Freddie's Time Dimension(s)J. Judges Always Win...

2019-02-10 00:27:23 971

原创 codeforces gym 100548F. Color(容斥原理)

传送门题意简述:对n个排成一排的物品涂色,有m种颜色可选。要求相邻的物品颜色不相同,且总共恰好有K种颜色,问所有可行的方案数。(n,m≤1e9,k≤1e6n,m\le1e9,k\le1e6n,m≤1e9,k≤1e6)思路:容斥原理套路:先不考虑是否选全kkk种颜色,方案数为Cmk∗k∗(k−1)n−1C_m^k*k*(k-1)^{n-1}Cmk​∗k∗(k−1)n−1。然后枚举剩下的...

2019-02-09 20:05:59 370

原创 codeforces451 E. Devu and Flowers(容斥原理)

传送门题意简述:给出n堆花,对于第j堆,有f[j]朵花,每堆花的颜色不同,现在要从中选出s朵,求方案数。思路:假设所有花没有上限直接插板法,现在有了上限我们用容斥扣掉多算的状压一下再容斥:fif_ifi​表示强制集合iii中的所有堆都超过上限,其余任意的方案数,这样容斥一下就完了。代码:#include<bits/stdc++.h>#include<tr1/uno...

2019-02-09 18:04:37 405

原创 常系数齐次线性递推算法学习

文章目录简介求法矩阵快速幂特征多项式一些定义Cayley-Hamilton定理递推优化简介定义:设有数列{an}满足递推关系an=∑i=1kan−ifi\{a_n\}满足递推关系a_n=\sum\limits_{i=1}^{k}a_{n-i}f_i{an​}满足递推关系an​=i=1∑k​an−i​fi​,则称该数列满足kkk阶齐次线性递推关系。求法现在我们从最基础的矩阵快速幂开始一步一步...

2019-02-09 16:32:02 1323

原创 bzoj2560: 串珠子(状压dp+简单容斥)

传送门题意简述:nnn个点的带边权无向图,定义一个图的权值是所有边的积,问所有nnn个点都连通的子图的权值之和。思路:fif_ifi​表示保证集合iii中所有点都连通其余点随意的方案数。gig_igi​表示只考虑集合iii中所有点的状态的子图的权值和。我们先预处理出ggg数组,然后考虑递推fff数组。显然fif_ifi​是等于gig_igi​扣掉一些东西的,扣掉的应该就是不连通的情况...

2019-02-09 12:23:43 304

原创 bzoj4487: [Jsoi2015]染色问题(容斥原理)

传送门题意简述:用ccc中颜色给一个n∗mn*mn∗m的方格染色,每个格子可涂可不涂,问最后每行每列都涂过色且ccc中颜色都出现过的方案数。思路:令fi,j,kf_{i,j,k}fi,j,k​表示至少有iii行没涂色,至少有jjj列没涂色,至少有ccc种颜色没涂色的方案数。于是fi,j,k=CniCmjCck(c−k+1)(n−i)(m−j)f_{i,j,k}=C_n^iC_m^jC_...

2019-02-09 11:37:53 405

原创 bzoj4710: [Jsoi2011]分特产(容斥原理)

传送门题意简述:有nnn个人,mmm种物品,给出每种物品的数量aia_iai​,问每个人至少分得一个物品的方案数(n,m,每种物品数≤1000n,m,每种物品数\le1000n,m,每种物品数≤1000)。思路:我们算出fif_ifi​表示至少有iii个人没有分到物品的方案数容斥一下即可。于是fi=Cni∏j=1mCn−i−1+ajn−i−1f_i=C_n^i\prod_{j=1}^mC...

2019-02-09 11:03:04 169

segment--tree

一个线段树的ppt,里面主要讲了线段树,主席树,和树链剖分

2018-08-20

空空如也

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

TA关注的人

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