自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 2024暑期集训补题(线段树分治 + 可撤销并查集 + 懒标记前缀和维护)

对于这种操作存在于一定时间区间内的问题,显然是线段树分治的板子,利用线段树分治将所有时刻的操作存入线段树,每询问到一个叶子节点即一个时刻,在向下递归的同时处理该区间内存在的操作即可,而对于是否能到达也显然用配套的可撤销并查集来处理,可撤销并查集能在回溯时撤销当前节点的操作,因此对于每个时刻,我们都可以求出能到达的点。所在的连通块根节点的标记值为时刻的前缀和,因此如果我们要让当前加入的点仅计算后面时刻的贡献,显然让当前的点标记值减去当前时刻。但是我们要求的是每个点能到达的时刻,如果暴力处理,最坏可能会达到。

2024-08-09 11:25:29 923

原创 2024暑期集训补题(DFS + AC自动机)

均为叶子节点,即存在失配情况,因此将其指向失配指针,相当于为其再次构建两个儿子,这两个儿子正是失配指针指向的节点的两个儿子,如果存在一个叶子节点,其失配指针也指向一个叶子节点,那么我们就继续失配,直到找到一个节点存在两个儿子为止。即下图所示,下划线 + 数字即表示失配再构建的儿子,这样的树形结构就可以保证无论如何向左或向右移动,必然存在一个节点与之对应。同步走到叶子节点,那么必然可以保证该叶子节点及以上的结构都存在,所以我们只需要当。,所以,对于失配指针指向叶子节点,我们在。所有叶子节点,因此计入答案。

2024-08-07 16:53:42 588

原创 2024暑期集训补题(菊花图)

是判别一个连通块是否为菊花图,存在两种情况, 一种是不删点的情况下已然是菊花图,另一种是必须删点才能形成菊花图。判别菊花图可以通过点的度数来判断,当一个连通块的只有一个或零个点度数不为。,否则,就找唯一的菊花图的某一个四元组,满足其形成的子图为非菊花图,然后枚举删每一个点,计算删完之后剩余的子图是否为菊花图即可。,则其为菊花图,那么我们就可以暴力地去枚举每个连通块,如果最后非菊花图的连通块数量大于一,那么显然输出。定义混沌点为删除该点以及该点的所有连边后,剩下的所有连通块均为菊花图。

2024-08-05 20:01:17 921

原创 暑期集训补题(线段树合并 + 树形DP)

及其子树来说,链只存在两种情况,要么经过该点通向其两棵子树,要么不经过该点,仅存在于子树中。来说,其要合并的子树中的链必然是最大的,同时在叶子节点更新答案,维护最大值,在减去。节点的带有点权的树,求任意条不相交的链在树上的最大点权和。总和,这两条链可以通过线段树合并来维护,在。为子树中最大的两条链的点权和,表示子树中最大的两条链的。存在两种情况,对于一个。操作时,每次取最大的。

2024-08-01 21:27:39 249

原创 2024暑期集训补题(线段树优化DP + 扫描线)

出发,只能向上和向右走,要求对于每个矩阵求出在不经过该矩阵的情况下,你能经过的最大的点权和。这三个值通过线段树优化DP即可维护,而四种情况通过扫描线从左往右扫,扫四遍,第一遍扫。考虑划分矩形区域,将答案分为四种情况讨论,如图,这个位置上的点的最大点权和。两个矩形达到右上角(不经过任何。两个矩形达到右上角(不经过任何。个矩形,每个点有一个权值,从。三个矩形达到右上角(必然经过。三个矩形达到右上角(必然经过。这个位置上的点的最大点权和,,第三遍和第四遍通过维护出的。

2024-07-31 21:09:49 747

原创 2024暑期集训补题(线段树)

显然用线段树去维护,实现单点修改和区间询问,整道题只有一个难点,如何合并两段区间的两个表达式(可能非法),解决了这个问题,显然就可以写了。次操作,每次操作可以选择询问一段区间内表达式的答案(保证询问区间的表达式合法)或者选择一个位置修改其为数字或加号乘号(保证修改完整个表达式合法)显然通过上述的拆解,我们可以维护以下几样东西:中间和,中间乘积,前缀长度,前缀乘积,前缀数值,后缀长度,后缀乘积,后缀数值。左区间或右区间只有乘号,那么拼合一个数,并与左区间的乘数和右区间的乘数相乘即可。作为多组表达式的和。

2024-07-26 21:00:16 322

原创 2024暑期集训补题(字典树 + 概率dp)

个字符串构建字典树,记录字典树上每个非叶子节点是多少个串的前缀,统计。的步骤并非无用,它可能会让你从某个。的含义,它实际上就是你想成功敲出。字符串的状态,因此我们可以定义。,问以任意顺序成功键入该。个字符串的最大概率是多少。概率成功打出该字符,有。

2024-07-24 17:07:48 815

原创 2024暑期集训补题(倍增)

赛制结果,显然利用双指针,左端表示开始的位置,右端表示从开始的位置比赛后的内部赛的结果的位置,当左端点向右移动时,我们需要移动右端点直到比赛比出胜负,然后初始化倍增数组,将开始位置向右跳一步到比出胜负的下一步的过程设置为。开始,贪心向右跳,如果要跳的步数小于等于外部赛制的最大局数。位置开始,不断循环完整的该字符串结果,问最终每个位置。最后比较胜利的场次是否大于等于。数组表示倍增过程中的胜负的次数统计。开始比赛时,整个比赛的最终结果是。,那么就跳,同时统计。

2024-07-24 15:41:46 657

原创 2024内部排位赛补题(LCA)

两树的每个点删除后的权值答案,最后比较累加贡献即可。满足前缀和差分的性质,可以通过差分求取一段区间的。,因此通过这样的转移方式可以从左向右遍历一遍。个节点的带点权的两棵树,同时给出。个点,要求删除一个点,使得。权值要大,求有多少种方案。,当我们要删除的点是。

2024-07-22 11:02:46 616

原创 2024暑期集训补题(构造)

还有一点需要注意的是题目限制了某个位置的固定图案,因此我们可以通过奇偶性去判断最多的单位圆图案的左上角应该是。时产生一个单位圆,那么显然我们只需要先去构造出最多的单位圆,判断答案是否小于当前图案且大于等于。,这样可以实现一个一个消除单位圆,当剩余单位圆的数量满足条件时,输出答案即可。,我们可以构造出类似于单位圆一样的图形,每产生一个单位圆,总贡献值会。,继续向右下角构造,我们可以发现每添加一个新的图案,其贡献要么为。,向下同理,当第一行和第一列构造完后,其贡献值必然为。,每添加一个新的图案,贡献也必然是。

2024-07-21 14:32:21 948 2

原创 2024内部排位赛补题(SAM)

考虑一个子串,其后缀的权值必然小于等于该子串的权值,利用这个性质我们可以遍历后缀自动机中所有的。集合,对于每一个集合来说,其后缀的权值满足在长度上的连续性,因此我们可以二分权值,然后对于每个。集合再二分其长度,找到最长的后缀,累加每个集合的后缀个数,判断与。对于这种涉及子串的问题,我们可以考虑到使用后缀自动机去求解。给定一个小写字母组成的字符串,每个字符都有一个权值。的关系,继续二分权值,直到找到答案即可。小的本质不同子串的权值。

2024-07-21 14:05:54 261 1

空空如也

空空如也

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

TA关注的人

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