摘要:
如果你愿意看一个省二选手的 OI 生涯。 阅读全文
摘要:
线段树分治可以将“一段时间”的条件统筹处理。 一种理解方法是考虑暴力,在每个时间点将当前状态调整出来,线段树分治做的事情相当于将一段时间内都有效的信息统一处理,当这个信息不再满足的时候就撤销。 具体地,若一个条件(通常是可以用并查集维护的)在时间 内有效,我们可以对时间轴开线段树 阅读全文
摘要:
例题:给一棵 个点的树,树上有 条链, 次询问,每次给出一条链,问有多少条给出的链与之有交。 将一条给出的链的点权设置为 ,边权设置为 ,统计就用链的点权和加边权和。不难发现每一条给出的链只会在链和中贡献 。 相关题目:CF1486F。 阅读全文
摘要:
A 题意 给一个单调不增序列,每次操作可以单点修,问把序列变为单调不减序列需要的最小操作次数。 分析 注意到事实上我们需要修改的数字非常多。考虑一个中间点 ,我们将所有小于 的数提升至 ,所有大于 的数减少至 。模拟这个过程是 \(O(n^2)\ 阅读全文
摘要:
A 模拟。 B 模拟。 C 模拟。 D 爆搜。 E 题意 给一个序列 和一个正整数 ,求: \[\sum_{1 \leq l \leq r \leq N} \left( \left(\sum_{l \leq i \leq r} A_i\right) \mathbin{\math 阅读全文
摘要:
A 题意 有 个灯和 个开关,每个灯都由两个开关控制,不知道电路,但知道开关的开闭,问最小亮灯数量和最大亮灯数量。 分析 最小:让开着的开关的两两抵消。 最大:开着的开关先开满,如果还有,剩余的和之前开的两两抵消。注意到抵消完还开着的灯数量等于关着的开关数量 阅读全文
摘要:
模拟赛搬了这个题,来写个题解。 这么小,不是状压就是很多很多维 DP(暴论)。状压我没想出来,那就正常 DP。 考虑依次填入字符串的每个位置,记 表示填了前 个位置,其中比 小的有 个,目前字典序比 阅读全文
摘要:
TopCoder SRM616 ColorfulCoins 题意 给一套货币,保证任意两种货币存在倍数关系且颜色互不相同。已知货币的币值集合,每次可以询问一个金额,给出货币张数最小的表示方案。问最小的询问次数,使得通过已知信息可以对应货币面值和颜色。 分析 最大的面值问一个 即可。 阅读全文
摘要:
10 月 05 日的 Ucup 比赛,贡献为 0,补了六道 阅读全文
摘要:
可以在 cnblog 中阅读。 题意 有 座城市,第 座城市生产了 件货物,最多可以出售 件货物,编号小的城市可以向编号大的城市运输至多 件货物,问最多能出售多少货物。 。 分析 乍一看是一个网络流问题, 阅读全文
摘要:
可以在 cnblog 中阅读。 题意 给一个合法括号序列,问有多少区间 ,使得将区间内的每个括号翻转后,括号序列仍合法。 分析 十分套路地,我们将 ( 看成 ,将 ) 看成 ,则一个括号序列合法的充要条件是转换后的序列满足: 前缀和任意位置非负; 最后一项为 阅读全文
摘要:
Vjudge 可以出成《三色绘恋》背景。 题意 给一个格点数为 的网格,给格点染色,相邻的格点不能染成同样的颜色。每个格子有一条对角线的边,可选 N 形和 Z 形。现在有一个残缺的网格,存在一些格子的对角线连法不确定,构造一种字典序最小的方案使得至少存在 阅读全文
摘要:
可以在 cnblog 中阅读。 考虑弱化版链怎么做,每次选取左端点在当前位置前面的线段,跳到其中最大的右端点,可以维护一个数组表示起点为 的目标位置,可以做到 。 考虑多次询问一段区间 的答案,这时如果暴力从 开始跳是 \(O(n^ 阅读全文
摘要:
可以在 cnblog 中阅读。 见这种题比较少,写篇题解加深印象。 如果直接上数据结构维护数组,似乎没有好的办法处理操作序列的一个子段。那不妨转变思路,对操作序列上数据结构维护。 假设顺序进行每个修改操作,我们用时间表示修改操作的编号,位置表示数组的下标,则常见的维护序列的数据结构实际是对位置维度维 阅读全文
摘要:
可以在 cnblogs 中阅读。 的数据范围提示让我们往颜色种类上考虑。 由题每次可以跳 或 格,即存在一条从 到 的路径的充要条件是不存在两个相邻的未激活格。换句话说,对任意两个相邻的格子都必须选择至少一个激活。 任意两个, 阅读全文
摘要:
不知道会不会更不好的阅读体验 题目的关键步骤为求出区间绝对众数(频率高于 )的出现次数,本文仅仅对这一问题进行探讨,剩余的解题步骤不难理解,可以参考其他题解。 解法 1 考虑一个随机化的解法,从区间中随 \(40 阅读全文