自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

dogeding233

I good vegetable a. | 拉低PKU平均水平 | 不定期诈尸

  • 博客(109)
  • 收藏
  • 关注

原创 manacher

manacher一般是用来处理回文子串的,通过一些处理将时间复杂度从O(n3)O(n^3)O(n3)或者O(n2)O(n^2)O(n2)降至O(n)O(n)O(n)。我们都知道,找奇数长度的回文串是容易的,只需要确定中间的字符并往两边扩展即可。于是就可以在原字符串的两个字符之间插入一个原字符串中不可能出现的字符,例如:abcba→#a#b#c#b#a#,abba→#a#b#b#a#,长度就变成了2l+1。那么用p[i]存储以i为中心的最长回文串的半径(理解成包括中间字符或者是保证回文的最远一位的右边一

2020-12-18 10:28:04 120

原创 CodeForces1046B Hyperspace Highways

传送门题意:N个点,M条边,每一个环上的点两两有边相连。q次询问两点间最短距离。题解:构造圆方树,那么两点间距离感性认知一下就可以发现是树上两点间距离的一半。然后dist(u,v)=(dep[u]+dep[v]-2*dep[lca])/2即可。继续存板子。代码:#include<cstdio>#include<algorithm>#define maxn...

2019-03-25 21:26:17 5343

原创 Luogu P4719 动态dp

传送门题解:日常的写不动题,存板假设这玩意不是动态的:设f[i][0/1]f[i][0/1]f[i][0/1]为第i个点不选/选的答案。那么f[i][0]=∑max⁡(f[j][0],f[j][1]),f[i][1]=∑f[j][0]+v[i].f[i][0]=\sum\max(f[j][0],f[j][1]),f[i][1]=\sum f[j][0]+v[i].f[i][0]=∑max(...

2019-03-25 10:57:02 162

原创 CodeChef MSTONES Milestones

传送门题意:平面上有n个点,已知不超过7条直线覆盖所有点。求在平面上的一条直线最多覆盖多少个点。题解:证明自己做过随机化的题很显然可以发现一个会T的做法:枚举两个点,然后再枚举所有点求出直线覆盖点的个数。这玩意O(n3)O(n^3)O(n3)的 CF评测机都肯定过不去。(然后后面就是看了某论文才get到的做法)显然我们可以发现覆盖最多点的直线覆盖了至少⌈n7⌉\left \lceil...

2019-03-19 22:26:12 304

原创 BZOJ2648 SJY摆棋子

传送门题解:既然Hint上明确指出“kdtree可以过”,那么这就是一道kdtree板题了。继续存板子。总之在这里就是 在第0层以x为关键字 第1层以y为关键字 第2层又以x为关键字 以此类推。然后查找就相当于优化了一下爆搜(…)答案更有可能在哪边就先往哪边找。代码:#include<cstdio>#include<algorithm>#define ma...

2019-03-19 22:10:54 374

原创 BZOJ4031 [HEOI2015]小Z的房间

传送门题解:因为持续写题感到恶心又不想显得太颓于是随便存几个板子求生成树方案数?矩阵树定理板子题。这就当我存个板子的地方吧。总之就是对于边(i,j),矩阵a[i][j]值-1,a[i][i]值+1。然后求个行列式即可。代码:#include<cstdio>#include<algorithm>#define maxn 105#define mod 10...

2019-03-19 22:05:27 139

原创 有上下界的网络流

传送门题解:语死早表示这玩意怎么可能是别人能看的我们先跑一发可行流。可以从t到s连一条容量INF的边,转化成上一个问题,那么跑完之后s到t的权值即为所求。然后在残量网络上跑s-t最大流即可。所求为二者之和。代码:#include&amp;lt;cstdio&amp;gt;#include&amp;lt;queue&amp;gt;#include&amp;lt;algorithm&amp;gt;#define maxn

2019-03-07 13:53:19 159

原创 BZOJ4869 [Shoi2017]相逢是问候

传送门题解:看过去一眼:线段树?暴力?然后就不知道该干什么了。看题解:woc?这公式?(好吧不会这公式就做不成题了…)欧拉定理EXT: ab≡abmod&amp;amp;amp;amp;ThinSpace;&amp;amp;amp;amp;ThinSpace;ϕ(p)+ϕ(p)(mod&amp;amp;amp;nbsp;p),b≥ϕ(p)a^b\equiv a^{b\mod \phi(p)+\phi(p)} (mod\ p),b\ge \phi(p)ab≡a...

2019-02-09 22:44:12 239

原创 WC2019凉凉记

蒟蒻的NOIWC2019 竟然不只拿了个狗牌

2019-02-02 21:04:48 662

原创 BZOJ3809 Gty的二逼妹子序列

题意:给定一个长度为n(1&lt;=n&lt;=100000)的正整数序列s(1&lt;=si&lt;=n),对于m(1&lt;=m&lt;=1000000)次询问“l,r,a,b”,每次输出sl…sr中,权值∈[a,b]的权值的种类数。题解:我们显然容易想到莫队。又很显然可以想到维护每个权值是否出现然后求和。但是如果用树状数组,每次操作的复杂度大概是O(mnlog⁡n)O(m\sqrt ...

2019-01-11 13:42:20 223

原创 BZOJ5006 [THUWC2017]Bipartite 随机二分图

传送门题解:考试时忙着想前面两道题了,没怎么看。看这个n的范围,估计是状压。考虑dp[i][j]dp[i][j]dp[i][j],左边匹配状态为i,右边为j时的概率。显然两边匹配点数相同。答案是dp[2n−1][2n−1]×2ndp[2^n-1][2^n-1]\times{2^n}dp[2n−1][2n−1]×2n。当然不能直接开数组。map吼哇。如果t=0,直接转移就行了。如果t=...

2019-01-05 18:02:56 201

原创 20190105 东非大裂谷

题意:题解:文科生误点进来我不负责!上一篇也是!太弱了太弱了迟早要烷观察不到性质,只会骗分。QAQ我们可以很容易写出50分算法:设dp[i]dp[i]dp[i]表示以i为根的子树且i为其中一个小组的起点时的最大值。很显然我们可以在整棵子树中枚举点v,维护从v往上走到达的点、WmaxW_{max}Wmax​和WminW_{min}Wmin​、u所有子树的dp值的和。然后就可以dp了...

2019-01-05 16:41:11 274

原创 20190105 地中海气候

题意:题解:这名称真是对一个在大半个月前会考了的理科生极度不友好。sb题没看出来我是不是该原地退役了啊显然有一个贪心策略:每次拿走最大的数。然后就有了50%的暴力做法:用优先队列维护。但是这O(nklog⁡n)O(nk\log n)O(nklogn)显然过不去。我们需要砍掉一个log。然后就是我考试时想了很久都没想出来的一坨东西。每次还有元素时我们拿掉一个元素之后会补上一个元素对...

2019-01-05 16:16:50 302

原创 POJ2420 A Star not a Tree?

传送门题解:模拟退火。我们随便选一个点(比如输入的第一个点)作当前点,然后模拟退火。如果新解比当前解好,可以接受;如果较差,也有一定概率接受。然后T减小,接受较差解的概率减小。第一次写模拟退火,不抄板是不可能不抄板的,这辈子都不可能不抄板的。迟早会补一篇模拟退火的。咕咕咕预定用srand(time(NULL))会RE。代码:#include&lt;cstdio&gt;#incl...

2018-12-30 20:25:09 329

原创 BZOJ4518 征途

传送门题解:感觉好多题解都是斜率优化…然而我这次需要用二分来解。斜率优化以后再补吧,咕令SiS_iSi​为前i条路的长度和,我们先推一下:v=∑i=1m(xi−x‾)2m=∑i=1mxi2−2x‾∑i=1mxi2+mx‾2m=∑i=1mxi2−mx‾2mv=\dfrac{\displaystyle \sum_{i=1}^m(x_i- \overline x)^2}{m}=\dfrac{\d...

2018-12-30 18:42:58 204

原创 HDU3948 The Number of Palindromes

传送门题意:给出一个字符串,问你有多少个本质不同的回文子串。题解:理论上有3种做法,我只写了回文自动机和manacher。这两个东西的坑我迟早会补上的回文自动机:建完之后根据我抄的建树方法输出节点数-1即可。#include&lt;cstdio&gt;#include&lt;cstring&gt;#include&lt;algorithm&gt;#define LL long l...

2018-12-26 12:45:53 245

原创 NOIp2018游记

day x (x≤0)(x\le 0)(x≤0)连着搞了4、5个月,天天被dalao们吊起来打。不敢在考完之前把游记发出来,怕被禁赛。考前试机,感觉键盘很迷。day 1考前膜拜各位dalao,希望rp++.T1好眼熟啊…我好像做过!做原题还是有用的 话说ccf是不是要把自己禁掉啊 papapa乱码一发,过样例走人。T2艹了艹,感觉是判断一下一个数是否能被其他数凑出来…?papapa...

2018-11-12 12:53:47 376

原创 TopCoder SRM674D2L3 VampireTreeDiv2

传送门题意(by 某轻小说看多了的yhn):吸血鬼有两种产生方式:1、被它的主人(一个吸血鬼)“初拥”。2、被它的父母(两个吸血鬼)所生。但这类吸血鬼很少,最多只有15个现在,给出每个吸血鬼的主人(或父母),要求选择尽可能少的吸血鬼,使得每个主仆关系、每个父子,母子关系中,都至少有一个被选中。求选择的方案数。题解:我们考虑一下树上最小边覆盖(是叫这个东西吧?),这个东西是可以直接用d...

2018-10-26 22:28:02 121

原创 三校联考20181024T3 统计count

题意:题解:话说T2和T3的位置是故意的吧?还有std的代码真丑(就像隔壁苏珊婶婶做的苹果派一样)(基本上全机房的人都这么想)。先说60%的数据,直接暴力枚举要取出的位置,暴力排序,然后每一次用树状数组或归并排序求逆序对数即可。对于100%的数据,我们可以维护一个f[i]f[i]f[i]为j&amp;gt;i,a[j]&amp;lt;a[i]j&amp;gt;i,a[j]&amp;lt...

2018-10-24 20:12:07 179

原创 三校联考20181024T2 点亮light

题意:题解:首先bb一下,本蒟蒻即将被第4个学校的dalao们吊打。wor,考场上做这道题时接连看错两次题意,简直差点自闭,还好暴力分给得足。然后吐槽一下题解的玄学程度…如果脸黑的话随机出来的数据真的还跑得过?算了就假设出数据的人没那么非,所有数据中树的深度就是期望深度=1+∑i=1n1i=1+ln⁡n+Θ(1)=1+\displaystyle \sum_{i=1}^n{\dfrac{...

2018-10-24 19:46:12 232

原创 CEOI2017 Building Bridges

传送门题解:对w求前缀和s,可以得到一个O(n2)O(n^2)O(n2)的dp:令f[i]为桥到i结束时花的最小代价,则f[i]=min{f[j]+(h[i]−h[j])2+(s[i−1]−s[j])}f[i]=min\{ f[j]+(h[i]-h[j])^2+(s[i-1]-s[j]) \}f[i]=min{f[j]+(h[i]−h[j])2+(s[i−1]−s[j])}。这个时间复杂度显...

2018-10-23 23:00:25 222

原创 BZOJ2865 字符串识别

传送门题意:XX在进行字符串研究的时候,遇到了一个十分棘手的问题。在这个问题中,给定一个字符串S,与一个整数K,定义S的子串T=S(i, j)是关于第K位的识别子串,满足以下两个条件:1、i≤K≤j。2、子串T只在S中出现过一次。例如,S=“banana”,K=5,则关于第K位的识别子串有"nana",“anan”,“anana”,“nan”,“banan"和"banana”。现在,...

2018-10-23 22:42:51 247

原创 三校联考20181017T1 异或xor

题意:题解:子任务1:直接O((r−l)2)O((r-l)^2)O((r−l)2)暴力即可。子任务3:我们随便举一个l=0,r=3的例子(为节省篇幅,表只打了一半)。iji^j000000000101001010001111010001010100011011011110…可以发现,...

2018-10-17 22:25:05 159

原创 最近考试记录

蒟蒻的日常考试爆炸记录

2018-10-15 19:05:58 398

原创 BZOJ2744 [HEOI2012]朋友圈

传送门题解:显然A国模2的余数相同的没有边,即A国的朋友关系是二分图。那么A国的朋友圈最多2个人。(否则如果有3个人,就有2个人模2的余数相同,做不了朋友)。B国稍微复杂,因为它本身并不是二分图。但它的补图是二分图,所以可以在补图上跑一发最大独立集,求法为总点数-最大匹配数。然后枚举A中的点,对于B中和枚举的点都连接的点跑二分图匹配即可。然后这道题需要注意讨论版:leoly:对于B类...

2018-10-12 18:51:20 192

原创 BZOJ2561 最小生成树

传送门题解:暂时不想写题QWQ显然,加入这条边后,权值比它大的边和比它小的边都不能连接这两个点。求最小割即可。蒟蒻只会isap。好久没打isap的板子了…又及这范围还真的过得去。代码:#include&amp;amp;amp;lt;cstdio&amp;amp;amp;gt;#include&amp;amp;amp;lt;cstring&amp;amp;amp;gt;#include&amp;amp;amp;lt;algorithm&amp;a

2018-10-12 18:31:58 205

原创 AGC015D A or...or B Problem

传送门题意:从[A,B]中选若干个数(至少1个),进行位运算or,能得到多少个不同的结果。题解:考试时想到的离AC特别近,但是就差了一步…亏亏亏。如果A=B,答案显然是1.所以考虑A&lt;B。首先我们可以把两个数最前面相同的部分减掉,可以发现这不影响答案(我差的就是这一步)。然后二者之间就一定会有若干个2的次方。根据找规律可以发现,对每一个i,使第i位必须取1,前面为0,后面任取,所...

2018-09-30 17:05:28 274

原创 AGC014E Blue and Red Tree

传送门题意:给出一棵有N个点的树,第i条边连接ai和bi。开始时,所有边都是蓝色的。某人打算做N-1次操作使得操作之后构成另一棵树,用红色的边连接ci和di。操作如下:1.选择一条只有蓝边的路径,并删掉其中一条边。2.在路径的两个端点之间连一条红边。求是否可行。...

2018-09-29 16:09:20 250

原创 AGC014D Black and White Tree

传送门题意:给出一棵有N个点的树。开始时,所有点都没被染色。两个人在这棵树上玩游戏。他们轮流操作:选择一个点,如果是先手操作,就把点涂成白色,否则涂成黑色。当所有点都被染色后,对于每一个与黑色点相邻的白色点,同时染成黑色。如果还有白点,先手胜,否则后手胜。两个人都采取最优策略,求出胜利者。题解:我们证明一下如果后手胜当且仅当这棵树是一个完全匹配。先证充分性:先手选择一个点,后手选择该点的...

2018-09-29 15:53:24 151

原创 AGC014C Closed Rooms

传送门题意:某个魔法师被锁在了一个建筑物里。这建筑物有H行,每行有W个房间。用A[i][j]表示某个房间的状态:当A[i][j]=’#’时房间被锁,不能进入;当A[i][j]=’.’时房间可以进入。魔法师当前所在房间状态为’S’(保证没有出口)。在第1行、第1列、第H行和第W列的房间有出口。房间(i,j)可以到达(i+1,j),(i,j+1),(i-1,j),(i,j-1).魔法师要用魔法使自...

2018-09-29 15:20:15 213

原创 AGC005B Minimum Sum

传送门题意:给出一个1-N的排列,求∑l=1N∑r=lNmin(al,al+1,...,ar)\displaystyle \sum^{N}_{l=1}\sum^{N}_{r=l}min(a_l,a_{l+1},...,a_r)l=1∑N​r=l∑N​min(al​,al+1​,...,ar​)。题解:直接暴力很好想,但是会T。这时候需要用到一种叫做单调栈的东西。我们可以这样思考:求出每...

2018-09-27 23:01:23 231

原创 AGC012B Splatter Painting

传送门题意:给你一个n个节点的简单无向图(无重边、自环),含有m条边。现在有q次操作。初始的时候所有点的颜色都为0。每一次操作的描述如下:选择一个节点v[i],将与这个节点的距离小于等于d[i]的点全部都染成颜色c[i]。现在要求你回答,完成这q次操作之后,每一个点的最终颜色是什么。题解:这道题d很小(≤10),可以暴力。但是直接暴力有可能会T(举个例子:菊花图)。考虑将操作倒过来,...

2018-09-27 22:49:02 1021

原创 AGC011D Half Reflector

传送门题意:有k个球被从左边放入最左边的某种设备里面,这种设备满足以下性质:若当前状态为A,则球从进入的方向被弹出,设备状态变为B。若当前状态为B,则球从进入的反方向被弹出,设备状态变为A。已知n个设备的初始状态,求最后状态。题解:当第一个设备的状态是A时,直接弹出,第一个变成B。否则可以打表找规律,发现每一次操作都会从右边出去,且操作后的状态正好就是左移后取反。那么就可以每次O(...

2018-09-27 07:34:41 207

原创 AGC010F Tree Game

传送门题意:有一棵有n个节点的树。现在第i个节点放有a[i]个石子。Takahashi和Aoki想要用这棵树玩一个游戏。首先,Takahashi选择一个节点并放一个木块在上面。然后从Takahashi开始,他们轮流进行如下操作:从木块所在的节点移除一个石子,然后把木块向相邻的一个节点移动。若当某个人进行操作的时候当前木块所在节点没有石子,那么他就不能进行这轮操作并输掉游戏。请找出所有...

2018-09-25 22:20:58 219

原创 AGC010D Decrementing

传送门题意:两人发现了一块黑板.现在黑板上有n个数,两人惊奇地发现它们的最大公约数为1.于是他们决定玩一个游戏,两个人轮流进行操作,Hellen先手.从黑板上的数选择一个不小于2的数,把这个数减去1.然后对于这n个数,除以他们的最大公约数.当一个人无法操作时便输了.他们都很聪明,每次都会进行最优的操作,问最后哪一个人能够获胜.题解:考试时没想到分类讨论,结果大暴力还写丑了…哭唧唧。看...

2018-09-25 20:44:15 129

原创 AGC003D Anticube

传送门题意:有一个长度为N的数组S,要求从S中选择一些数,使得在你选择出的这些数中,任意两个数的乘积不是一个立方数。注意:S中的数可能有重复。求最多能从S中选择多少个数满足要求。题解:对每一个数x=p1a1p2a2...pkakx=p_1^{a_1}p_2^{a_2}...p_k^{a_k}x=p1a1​​p2a2​​...pkak​​,我们可以求出x′=p1a1%3p2a2%3...p...

2018-09-25 16:43:25 361

原创 AGC002D Stamp Rally

传送门题意(也不是我翻的有点长就将就着看嘛):有一个N (3&lt;=N&lt;=105)个结点和M(N−1≤M≤105)个边的无向图。 结点编号为1到N,边编号为1到M。边i连接结点ai和bi。保证图连通。在这张图上,Q(1≤Q≤105)对兄弟正在参加一项名为Stamp Rally的活动。 第i对Stamp Rally如下:一个兄弟从结点xi开始,另一个从结点yi开始。(1≤xi&lt;y...

2018-09-25 16:03:56 201

原创 AGC009B Tournament

传送门题意:共n人,n-1次淘汰,给出[2,n]所败之人,比赛可同时进行,每场一刻钟,求比赛总时间最短几刻钟。注意:很明显1号获胜。题解:题目显然给出了一棵树。一开始想简单了…以为就是树的深度。然后发现不对。因为深度相同的可能同时到达父亲,而父亲又不能同时和儿子们比。那么就需要存下他们赢完后的时间,如果冲突就往后面推。但是不能直接从t[i](见代码)往后面推,对于精心构造的数据会...

2018-09-24 22:11:20 173

原创 AGC009D Uninity

传送门题意:我们定义一棵树的uninity值:只有一个点的树的uninity值为0;假设有若干(可以是0)棵uninity值为k的树和一个点v,每棵树各选一个点连到v,那么得到的树的uninity值为k+1。显然一棵uninity值为k的树,它的uninity值也可以是k+1,k+2,…给出一棵有N个点的树,求最小的uninity值。题解:我们给每个点赋一个值。在构造一棵unini...

2018-09-24 21:59:25 230

原创 AGC009C Division into Two

传送门题意:给出一个集合,集合内的数都是整数且互不相同。现在将这个集合划分成X和Y两个集合(X和Y可以为空),使:X中任意两个元素至少相差A;Y中任意两个元素至少相差B。求满足条件的划分的方案数,对1e9+7取模。题解:我们可以想到一个O(n2)的dp。设fx[i][j]为第i个元素在X中,且在Y中的最后一个元素是j的方案数。同理定义fy[i][j]。然后考虑一下fx[i][j...

2018-09-24 18:37:52 196

空空如也

空空如也

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

TA关注的人

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