摘要:
原题传送门 提供一个常数巨大的暴力数据结构做法。 分析 看到这种极值类问题,可以先想一想二分。由于这题中可以击败的怪物一定是一段连续的前缀,所以考虑二分这段前缀的长度。 由于本题中一道护身符免掉的是一种类型的怪物所造成的总伤害,所以考虑单个怪物的伤害是没有意义的。接下来我们只考虑某一区间中同一类型的 阅读全文
posted @ 2024-01-31 22:07
forgotmyhandle
阅读(26)
评论(0)
推荐(0)
摘要:
原题链接 分析 观察要求的式子:\(\sum_{1 \leq i \lt j \leq N}f(S_i, S_j)\),发现可以拆成每一个集合 \(S_i\) 的贡献的和。那么我们考虑每一个集合 \(S_i\) 的贡献。 显然,对于每一个 \(S_i\) ,其贡献就是 \(\sum_{i \lt j 阅读全文
posted @ 2024-01-31 22:06
forgotmyhandle
阅读(30)
评论(0)
推荐(0)
摘要:
这题题解的做法千奇百怪,有写了两棵线段树的,有线段树套差分的,还有线段树套二阶差分的。我承认是我看不懂所以我决定写一篇只用一棵线段树的题解。 分析 众所周知,普通线段树的懒标记存的是一个待更新的量。那对于这个题来说,直接存和(也就是 add 操作在这个线段上的影响)肯定是不切实际的,因为知道了这个线 阅读全文
posted @ 2024-01-31 22:04
forgotmyhandle
阅读(22)
评论(0)
推荐(0)
摘要:
原题传送门 分析 首先一眼看到这个题,第一个想到的肯定是 dfs 暴力每次询问时从左往右把边一条一条加进来,再从右往左加一遍,然后维护连通块个数。但是这样的复杂度显然是 \(O(mk)\) 的。所以我们需要一些优化。 注意到在加边的时候有些边并不会改变连通块的个数。这些边我先称之为无用边。于是我们可 阅读全文
posted @ 2024-01-31 22:03
forgotmyhandle
阅读(21)
评论(0)
推荐(0)
摘要:
这出题人语言表达能力真的感人…… 希望你们看完这篇题解后不要觉得我的语言表达能力和出题人不相上下。 题目大意 给定一棵有点权的树,每次询问从 \(u\) 到 \(v\) 的路径上后经过的点权减去先经过的点权的最大值,再把这条路径上所有点的点权加上一个给定的数。 分析 俗话说得好:如果你觉得一个树上的 阅读全文
posted @ 2024-01-31 22:02
forgotmyhandle
阅读(21)
评论(0)
推荐(0)
摘要:
原题传送门 当天比赛打完之后看了看跟我排名差不多的人的这题代码,感觉莫名其妙,写了几十行。我看了看我只有十几行的 AC 代码,陷入了沉思。 分析 题目的要求其实可以转换为:在区间 \([l_0, r]\) 中选择一些数,使得这些数排序后每个数都是前一个数的倍数,要求选的尽可能多。那既然要选的尽可能多 阅读全文
posted @ 2024-01-31 22:00
forgotmyhandle
阅读(16)
评论(0)
推荐(0)
摘要:
分析 首先发现此题的式子一看就不是很友好。所以尝试化简。 原式:\(max(|a_u + a_v|, |a_u - a_v|)\)。 分类讨论: 当 \(a_u > 0, a_v > 0\) 时,显然有 原式 \(= a_u + a_v\); 当 \(a_u > 0, a_v < 0\) 时, \( 阅读全文
posted @ 2024-01-31 22:00
forgotmyhandle
阅读(7)
评论(0)
推荐(0)
摘要:
原题传送门 分析 既然题目要求求出所有四行诗共同的形态,那我们就想到可以用位运算。 我们用二的次方来表示每一种形态,然后把每一篇诗的形态或起来,就可以得到最终的形态。输出的时候再拿个函数转一下就行了。 有了基本框架,我们就可以开始构造特殊情况。题目中说到如果有 aaaa 这种类型,那么它可以等同于任 阅读全文
posted @ 2024-01-31 21:58
forgotmyhandle
阅读(18)
评论(0)
推荐(0)
摘要:
题目 CF1779D 题目传送门 分析 应该让每一个 \(x\) 覆盖尽量大的区间。 分析题目,可以知道对于每一个位置 \(i\),有多少 \(x > b[i]\) 覆盖了 \(i\) 是不关键的,关键是是否有一个 \(x \leq b[i]\) 是否覆盖了它。 当位置 \(i\) 被 \(x < 阅读全文
posted @ 2024-01-31 21:56
forgotmyhandle
阅读(22)
评论(0)
推荐(0)

浙公网安备 33010602011771号