自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

QuantAsk

但行好事,莫问前程

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

原创 P4555-[国家集训队]最长双回文串【Manacher】

正题题目链接:https://www.luogu.com.cn/problem/P4555题目大意长度为nnn的串,双回文串的定义是两个连续的回文串,求最长的双回文串。解题思路我们用马拉车维护pip_ipi​的时候维护一个lil_ili​和rir_iri​。li:l_i:li​:以iii开头的最长回文串rir_iri​以iii结尾的最长回文串。然后ans=max{li+ri}(...

2020-01-31 22:02:51 290

原创 P3573-[POI2014]RAJ-Rally【拓扑排序,二分+树状数组】

正题题目链接:https://www.luogu.com.cn/problem/P3573题目大意nnn个点mmm条边的DAGDAGDAG,删掉一个点使得最长路最短。解题思路先跑一遍拓扑排序dsids_idsi​表示以iii结尾的最长路,dtidt_idti​表示以iii开头的最长路,用拓扑序+dp可以搞定定义两个点集SSS和TTT,我们先将所有所有点放入TTT集合,并且把dtd...

2020-01-30 14:35:23 251

原创 P3449-[POI2006]PAL-Palindromes【结论题,字符串hash】

正题题目链接:https://www.luogu.com.cn/problem/P3449题目大意nnn个回文串,求有多少对回文串有序拼接可以形成一个新的回文串。解题思路结论:当两个回文串的最短循环节相同时两个拼接起来就是一个新的回文串。这里感性证明一下:若两个回文串的最短循环节相同,那么这个循环节一定也是个回文串,那么若干个相同的回文串拼接那么这也一定是个回文串,所以这是充分...

2020-01-29 16:08:34 290

原创 P6015-[CSGRound3]游戏【树状数组】

正题题目链接:https://www.luogu.com.cn/problem/P6013?contestId=25945题目大意nnn张牌,玩家111从顶拿若干张,之后玩家222拿若干张。若牌的和大于KKK那么分数为0否则为牌的和。求KKK为多少时玩家111必胜。解题思路我们枚举玩家111拿多少张,然后用一个指针记录玩家222拿到哪里时比玩家111大。若玩家111的和为lll,...

2020-01-29 13:59:08 462 3

原创 P4762-[CERC2014]Virus synthesis【PAM,dp】

正题题目链接:https://www.luogu.com.cn/problem/P4762题目大意长度为nnn的目标串,开始一个空串,可以执行以下操作在头或者尾加一个字符复制一个该串的逆串放在后面求最少操作次数。解题思路我们可以知道答案肯定是一个回文串然后剩下的暴力加上。我们构建一个PAMPAMPAM,然后用fif_{i}fi​表示带该回文串需要的最少次数。对于一个节点...

2020-01-27 16:46:08 284

原创 P4287-[SHOI2011]双倍回文【PAM】

正题题目链接:https://www.luogu.com.cn/problem/P4287题目大意长度为nnn的字符串。定义wRw^RwR表示字符串www的翻转。一个双倍回文可以表示为wwRwwRww^Rww^RwwRwwR且这是个回文串。求最长的子串是双倍回文。解题思路我们在构建PAMPAMPAM的时候维护一个halfhalfhalf表示该节点表示的回文串中一个长度小于该串长度...

2020-01-27 15:47:52 243

原创 P4248-[AHOI2013]差异【SAM or SA】

正题题目链接:https://www.luogu.com.cn/problem/P4248题目大意TiT_iTi​表示后缀i∼ni\sim ni∼n一个字符串求∑i=1n∑j=inlen(Ti)+len(Tj)−2∗lcp(Ti,Tj)\sum_{i=1}^n\sum_{j=i}^nlen(T_i)+len(T_j)-2*lcp(T_i,T_j)i=1∑n​j=i∑n​len(Ti​)...

2020-01-26 16:28:58 257

原创 P5496-[模板]回文自动机【PAM】

正题题目链接:https://www.luogu.com.cn/problem/P5496题目大意长度为nnn的字符串,求每个字符串作为结尾有多少个回文串。解题思路PAMPAMPAM。下面是个人对PAMPAMPAM的一些理解(不是讲解):每个节点表示一个回文串,就是根到其的路径上的字符为一半。为了方便表示长度为奇数的和偶数的,这里用了两个根节点。一个奇数根长度为−1-1−1,...

2020-01-26 15:17:25 282

原创 P3804-[模板]后缀自动机【SAM】

正题题目链接:https://www.luogu.com.cn/problem/P3804题目大意长度为nnn的串,求一个出现次数不小于2的子串使得子串长度乘上出现次数最大。解题思路构建SAMSAMSAM的时候统计一下每个子串出现多少次即可。codecodecode#include<cstdio>#include<cstring>#include&l...

2020-01-26 00:08:05 206

原创 P2336-[SCOI2012]喵星球上的点名【SA,树状数组】

正题题目链接:https://www.luogu.com.cn/problem/P2336题目大意nnn个名字(每个名字两个串),mmm次点名,如果一次点名里是一个名字两个串中的子串该人就要答到。对于每次点名求多少个人答到,每个名字求答到多少次。解题思路先考虑第一问,我们将所有串串在一起(中间加大数)然后跑出SASASA和所有的LCPLCPLCP。然后对于每个点名串起始位置kkk...

2020-01-25 18:11:32 353 4

原创 P2463-[SDOI2008]Sandy的卡片【SA,二分答案】

正题题目链接:https://www.luogu.com.cn/problem/P2463题目大意nnn个长度不同的数字序列,序列的子串相同的定义是该子串相邻的两两差相同。求公共子串的最长长度。解题思路做一个差分后问题就变为了求nnn个串的最长公共子串。我们将所有的字符串接在一起并且在每个之间加一个不同的大数。然后我们考虑使用SASASA,前计算出HeightHeightHei...

2020-01-25 15:36:25 322 1

原创 P2396-yyylovesMathsVII【状压dp】

正题题目链接:https://www.luogu.com.cn/problem/P2396题目大意nnn个数字,依次选择若干个数字使得没有任何一个前缀和等于厄运数字,厄运数字有mmm个。解题思路先预处理出disidis_idisi​表示集合iii的数字和。然后对于disidis_idisi​不等于厄运数字有转移fi=∑2j∈if2jf_{i}=\sum_{2^j\in i}f_{2...

2020-01-24 23:08:24 263 3

原创 P3809-[模板]后缀排序(SA)

正题题目链接:https://www.luogu.com.cn/problem/P3809题目大意长度为nnn的字符串,求它的字符数组(后缀排序后排名为iii的在哪个位置)。解题思路大概思路就是倍增排序,先排每个后缀的第一个字符,然后是两个,然后是四个,以此类推。为什么可以这样?我们由kkk的排列拓展到k∗2k*2k∗2时我们将其分为双关键字排序,第iii位的第一关键字是第iii位...

2020-01-23 17:04:45 237 1

原创 P3521-[POI2011]ROT-Tree【线段树合并】

正题题目链接:https://www.luogu.com.cn/problem/P3521题目大意一棵二叉树,叶子节点有权值,对于每个非叶子节点可以选择交换左右节点,求最后遍历出来的叶子节点权值逆序对最少。解题思路十分显然一个节点是否交换是不影响该节点子树之外的逆序对数量的,所以如果更优直接交换就好了。所以我们开始对于每个叶子节点维护一个线段树,然后每次将两棵线段树合并,顺便在合并...

2020-01-23 15:36:30 244

原创 P3261-[JLOI2015]城池攻占【左偏树】

正题题目链接:https://www.luogu.com.cn/problem/P3261题目大意nnn个点的树,每个节点有一个防御值和一个攻击后的影响(让你的伤害加上一个数或者乘上一个数)然后mmm个骑士,给定初始攻击点和初始伤害,不停往上走,遇到防御小于他伤害的城堡就攻占否则就死亡求每个城堡干死了多少个勇士,每个勇士干死了多少个城堡。解题思路显然以伤害建立一个小根堆,每次想不...

2020-01-22 15:15:01 203

原创 P1552-[APIO2012]派遣【左偏树】

正题题目链接:https://www.luogu.com.cn/problem/P1552题目大意一个nnn个点森林,每个点有价值和代价,选择一个点并在这个点的子树中选择一些点使得。选择的点数∗该点的价值选择的点数*该点的价值选择的点数∗该点的价值最大且选择的点的代价之和不超过mmm。解题思路我们对于每个点,我们将所有子节点处理完后将子节点的左偏树合并,然后不停弹出代价最大的点知道...

2020-01-20 17:12:47 229

原创 P3377-[模板]左偏树(可并堆)

正题题目链接:https://www.luogu.com.cn/problem/P3377题目大意开始时nnn个只有一个数的集合,要求支持合并两个集合查询一个集合中的最小值并删除codecodecode#include<cstdio>#include<cstring>#include<algorithm>using namespace...

2020-01-20 16:34:39 309

原创 U102488-傻叉题【dp】

前言%\%%一下出题人BPMBPMBPM正题题目链接:https://www.luogu.com.cn/problem/U102488题目大意nnn个数,选取两组(不一定要全用上)使得他们的和相等且最大。解题思路考虑dpdpdp,fi,jf_{i,j}fi,j​表示到第iii个,差值为jjj(这里的差值是大的减去小的)。然后有不选fi,j=fi−1,jf_{i,j}=f_...

2020-01-17 21:25:50 187

原创 P3462-[POI2007]ODW-Weights【贪心】

正题题目链接:https://www.luogu.com.cn/problem/P3462题目大意nnn个容器容量不同,mmm个物品,对于一两个物品i,ji,ji,j,若wi≤wjw_i\leq w_jwi​≤wj​那么有wi∣wjw_i|w_jwi​∣wj​。求能够放下的最多物品。解题思路显然就是一个进位的东西,我们设fif_ifi​表示第iii位能装下多少个(优先装大的先)对...

2020-01-17 21:14:48 188

原创 UOJ#244-[UER#7]短路【贪心】

正题题目链接:http://uoj.ac/problem/244题目大意n+1n+1n+1个矩阵如下图所示每一层的格子有相同的延时,现在加一些平行于坐标轴的导线,求左上到右下的最小延迟。解题思路可以知道最优解一点是走到某个矩阵的左上角然后走这个矩阵到右下角然后到终点。设fif_ifi​表示走到iii的左上角的最小延迟,显然有fi=fi−1+min{aj}(1≤j<i)f_...

2020-01-17 19:38:11 237

原创 U102380-简单数据结构题【Trie】

前言%%%\%\%\%%%%北大爷的题目正题题目链接:https://www.luogu.com.cn/problem/U102380题目大意nnn个数,求一个数kkk使得max{ai xor k}max\{a_i\ xor\ k\}max{ai​ xor k}最小。解题思路我们对每一个数按位建到一个TrieTrieTrie里,然后对于每...

2020-01-17 16:35:24 211

原创 jzoj3853-帮助Bsny【dp】

正题题目链接:https://jzoj.net/senior/#main/show/3853题目大意nnn个数字,每次可以将一个数字拿出并插入任意位置,操作kkk次求最少段连续相同的数。解题思路先将相同的缩在一起设fi,j,s,zf_{i,j,s,z}fi,j,s,z​表示到第iii个,拿出了jjj个,然后前面有的数集合为sss,最后一个数字是zzz。定义目前的数字是xxx,加上...

2020-01-16 18:28:58 255

原创 jzoj3854-分组【树状数组,线段树】

正题题目链接:https://jzoj.net/senior/#contest/show/2990/2题目大意一个小队满足要求队长的地位最高所有队员和队长的年龄差不超过kkk给出nnn个人的地位和年龄,qqq个询问每次询问一组(x,y)(x,y)(x,y)求若(x,y)(x,y)(x,y)在同一个队里那这个队的最多人数。解题思路我们将年龄离散化然后按照地位从大到小排序。...

2020-01-16 17:54:11 252

原创 jzoj3852-单词接龙【0/1分数规划,负环】

正题题目链接:https://jzoj.net/senior/#main/show/3852题目大意nnn个单词串,头尾有两个相同单词就可以连在一起,求一个最长的环使得平均单词长度最长。解题思路其实总共26∗2626*2626∗26个点,然后求一个回路使得平均边长最长就是0/1分数规划问题二分一个答案midmidmid,将边权改为mid−wmid-wmid−w,然后跑负环判断即可...

2020-01-16 17:48:04 234

原创 P2805-[NOI2009]植物大战僵尸【网络流,最大权闭合图】

正题题目链接:https://www.luogu.com.cn/problem/P2805题目大意n∗mn*mn∗m的格子,攻击这个格子(x,y)(x,y)(x,y)可以获得价值cx,yc_{x,y}cx,y​,攻击一个格子(x,y)(x,y)(x,y)前要攻击(x,y+1)(x,y+1)(x,y+1)。对于有的格子(x,y)(x,y)(x,y)会保护些格子,攻击一个格子直接必须攻击掉保...

2020-01-15 21:54:43 235

原创 CF9D-How many trees?【dp】

正题题目链接:https://www.luogu.com.cn/problem/CF9D题目大意求nnn个点组成的深度大于hhh的二叉树有多少个。解题思路定义fi,jf_{i,j}fi,j​表示iii个点高度为jjj的树有多少个,然后每次将两棵(a,b)(x,y)(a,b)(x,y)(a,b)(x,y)合并就有fa+x+1,max{b,y}+1+=fa,b∗fx,yf_{a+x+1...

2020-01-15 16:30:49 187

原创 P4170-[CQOI2007]涂色【区间dp】

正题题目链接:https://www.luogu.com.cn/problem/P4170题目大意给出长度为nnn的串目标串,每次可以在一连续的区间覆盖同种字符,求最少覆盖次数。解题思路我们分情况考虑,用fi,jf_{i,j}fi,j​表示从i∼ji\sim ji∼j都涂好需要的最少次数,若i==ji==ji==j,那么显然有fi,j=1f_{i,j}=1fi,j​=1若i!=...

2020-01-15 16:11:06 251

原创 P3193-[HNOI2008]GT考试【KMP,dp,矩阵乘法】

正题题目链接:https://www.luogu.com.cn/problem/P3193题目大意求有多少个长度为nnn的字符串不包含子串sss。解题思路考虑dpdpdp,用fi,jf_{i,j}fi,j​表示第iii个已经匹配到jjj时的方案数。显然这与正常匹配十分相似,我们分为两种情况ansi+1==sj+1ans_{i+1}==s_{j+1}ansi+1​==sj+1​那...

2020-01-12 11:21:17 248 2

原创 P4768-[NOI2018]归程【kruskal重构树,最短路】

正题题目链接:https://www.luogu.com.cn/problem/P4768题目大意nnn个点mmm条边的无向图,然后每条边有水位和长度。每次询问一个(v,w)(v,w)(v,w)表示从vvv点出发走高度超过www的路径到达一个点xxx使得x∼1x\sim1x∼1的最短路最短。解题思路先用DijDijDij跑出111的单源最短路,然后边权从大到小排序建立一颗Krusk...

2020-01-11 00:15:21 276 3

原创 jzoj3783-[NOIP2014模拟8.19]签到题【结论题】

正题题目链接:https://jzoj.net/senior/#main/show/3783题目大意nnn个数,求这个序列中一个非空子集的和是nnn的倍数。解题思路可以知道一定有一种解法是一段连续的序列。证明:设sxs_xsx​表示(∑i=1xai)%n(\sum_{i=1}^xa_i)\%n(∑i=1x​ai​)%n,那么我们要找到一个sl=srs_l=s_rsl​=sr​。...

2020-01-10 23:33:04 295

原创 P4092-[HEOI2016/TJOI2016]树【线段树,倍增】

正题题目链接:https://www.luogu.com.cn/problem/P4092题目大意nnn个点的树要求支持以下操作给一个点打上标记求一个节点最近的打上了标记的祖先解题思路就是求深度最大的打上了标记的祖先,先跑一遍dfsdfsdfs序,然后对于修改操作就在线段树上整个子树的区间打一个最大值。这里为了方便线段树就只维护了答案节点的深度,然后用倍增跑到那个节点。时...

2020-01-05 19:22:46 252

原创 P4071-[SDOI2016]排列计数【组合计数,错排】

正题题目链接:https://www.luogu.com.cn/problem/P4071题目大意每次询问n,mn,mn,m。求有多少个nnn的排列使得ai=ia_i=iai​=i的数量恰好为mmm个。解题思路首先nnn个之中选择mmm个ai=ia_i=iai​=i,选择的方案数为CnmC_{n}^mCnm​。剩下的错排就好了错排推导di=(i−1)(di−1+di−2)d_i=(...

2020-01-05 17:45:27 220

原创 P3698-[CQOI2017]小Q的棋盘【树形dp】

正题题目链接:https://www.luogu.com.cn/problem/P3698题目大意nnn个点的树,求从111出发走kkk步最多能到多少个节点。(重复走不算)解题思路做法与树形背包类似,但是需要注意的是最后不需要返回原点。fi,j,0/1f_{i,j,0/1}fi,j,0/1​表示第iii个点的子树中走jjj步,需要/不需要返回iii号点的最多点数。然后有转移方程...

2020-01-05 13:33:08 239

原创 bzoj3732-Network【Kruskal重构树模板】

正题题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3732题目大意一张图,每次询问两个点,求这两个点之间路径的最大值的最小是多少。解题思路构造一颗KruskalKruskalKruskal重构树然后就是模板了。codecodecode#include<cstdio>#include<cstring...

2020-01-05 12:25:44 179

原创 P5887-Ringed Genesis【GCD】

正题题目链接:https://www.luogu.com.cn/problem/P5887?contestId=24709题目大意nnn个洞围成一个环,兔子每次会往前跳kkk个洞,mmm只兔子给出其实位置,求有多少个洞不会被经过。解题思路我们可以发现kx+ny=ckx+ny=ckx+ny=c,有c∣gcd(k,n)c|gcd(k,n)c∣gcd(k,n)。那么对于每个兔子的起点pp...

2020-01-03 19:57:36 501

原创 P3157-[CQOI2011]动态逆序对【CDQ分治,树状数组】

正题题目链接:https://www.luogu.com.cn/problem/P3157题目大意一个长度为nnn序列,每次删除一个数,求删除前的逆序对数量。解题思路时光倒流之后,我们变为每次加入一个数求逆序对数量。我们将加入一个数的贡献分为后面和前面两部分后面是加入时后方比他小的数的个数前面是加入时前方比他大的数的个数这里用aia_iai​表示加入的时间先后,bib_ibi...

2020-01-01 12:21:06 207

原创 P3810-[模板]三维偏序(陌上花开)【CDQ分治,树状数组】

正题题目链接:https://www.luogu.com.cn/problem/P3810题目大意nnn个三元组(a,b,c)(a,b,c)(a,b,c),f(i)=∑i=1n,j≠i[aj≤ai&bj≤bi&bj≤bi]f(i)=\sum_{i=1}^{n,j\neq i}[a_j\leq a_i\&b_j\leq b_i\&b_j\leq b_i]f(i...

2020-01-01 11:39:22 231

原创 51nod-诺德街【数学期望】

正题题目链接:http://www.51nod.com/Contest/Problem.html#contestProblemId=305题目大意nnn个商铺,第iii个商铺有pip_ipi​的概率营业,一个人从111走到nnn再走回来一直重复,如果走到没有人营业的商铺那么就结束。求期望走多少个商铺后停下。解题思路我们可以先计算他走一个来回的期望停下位置www和不停下的概率zzz,...

2020-01-01 10:42:35 218

空空如也

空空如也

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

TA关注的人

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