随笔分类 - 分治-二分三分
摘要:做交互不能不用二分,就像中国不能失去山东,就像西方不能失去耶路撒冷,就像学数学不能没有 Tiw_Air_OAO(bushi
阅读全文
摘要:题目 点这里看题目。 分析 不妨先认为 $C_i=1$。首先破环为链,则原问题等价于: 你有一个长度为 $n$ 的序列 $a$ 和 $m$ 个二元组 $(l_i,r_i)$。一开始时,$a_i=0$。 对于每个二元组 $(l_i,r_i)$,你可以选择: (原始操作)$\forall l_i\le
阅读全文
摘要:题目 点这里看题目。 给定一个长度为 $n$ 的非负整数序列 $a$,有 $q$ 次操作,每次操作类型为如下三种之一: 给定 $v$,表示 $\forall 1\le i\le n$,令 $a_i\gets \min{a_i,v}$。 表示 $\forall 1\le i\le n$,令 $a_i
阅读全文
摘要:「UOJ747」面基之路 难得有一道我做得起的水题。 尝试二分答案,判定等价于检查是否存在一个点,使得在规定时间内 hehe 蚤和网友们都可以走到该点。检查能否走到某个结点是容易的,检查某条边上是否存在一个点相当于是检查集合的交集是否为空,转化成区间的并集是否覆盖了整条边,可以将区间排序之后扫描端点
阅读全文
摘要:题目 点这里看题目。 分析 可以说,这是一道思路比较常规的题目,但是某些看待问题的角度还是可以学习的。 首先从题目中注意到两个关键信息: 最长最短路——直径——联系到原树的直径; 显然答案是可以二分的; 原树的直径这个东西怎么用?我们不妨先把原树的直径提作“根”。下面是一个显然的结论: 新加边的一个
阅读全文
摘要:题目 点这里看题目。 分析 有一定难度的题目,但是可以说问题的限制是比较常见的。 Subtask 3 也就在这个 subtask 上面有所突破 所有糖果盒子的容量相等,不妨设这个值为 \(c\)。 问题的结构是“区间修改、单点查询”,这里我们可以扫描序列,在端点处插入或删除修改,从而具体地拿出每个糖
阅读全文
摘要:题目 点这里看题目。 分析 如果你熟悉问题的结构的话,你会发现题目要求的相当于是树上带权重心。 关于这一点的说明: 考虑现在将任意一点 \(u\) 提作根,并设 \(sd_u\) 为 \(u\) 子树内的 \(d\) 之和。 那么考虑 \(u\) 的一个儿子 \(v\) ,如果现在将根从 \(u\)
阅读全文
摘要:题目 点这里看题目。 分析 不难发现: \[ |\sum_{i=1}^n(A_{ij}-B_{ij})|=|\sum_{i=1}^nA_{ij}-\sum_{i=1}^nB_{ij}| \] 行求和同理;于是可以发现 \(\sum A_{ij}\) 都是定值,我们只关心 \(B\) 的行和和列和。
阅读全文
摘要:题目 点这里看题目。 分析 第一道交互题,真好玩。 我们以下就称 \(a,b\) 为选定的两个点。 不难想到一个大致思路:首先,找出一个在 \((a,b)\) 上的一个点。然后找出 \(a\) 或者 \(b\) 中的一个点。此时我们必然知道 \((a,b)\) 的长度,因此我们可以再用一次询问获得另
阅读全文
摘要:题目 点这里看题目。 分析 设$F(T)$为温度为$T$的时候火系战士能量和,$I(T)$为$T$时冰系战士能量和。 显然我们需要求: \(\max\{\min\{F(T),I(T)\}\}\) 另一个显然的事情是,$F(T)$是一个后缀和,$I(T)$是一个前缀和;因而$F(T)$单减,$I(T)
阅读全文
摘要:题目 点这里看题目。 分析 直接变换式子: \[ \begin{aligned} h_j\le h_i+p_i-\sqrt{|i-j|} & \Rightarrow p_i\le h_j+\sqrt{|i-j|}-h_i\\ & \Rightarrow p_i=\lceil\max\{h_j+\sq
阅读全文
摘要:题目 "点这里" 看题目。 分析 首先不难发现答案具有单调性,因此可以二分答案。答案上限为$V=2m\times \max\{a_i, b_i\}$。 考虑如何去判断当前的答案。设这个答案为$mid$。 我们可以将一块三角形拼图看做一个向量,表示在这个拼图内走过的位移。因此我们的叠放的拼图可以看做一
阅读全文
摘要:题目 "点这里" 看题目。 分析 看到中位数,当然会想到二分答案。 考虑检查答案。自然,我们需要找出中位数小于二分值$k$的区间的个数。考虑构造一个$b$: $$b_i=( 1)^{[a_i\ge k]}$$ 可以发现,这个$b$满足,如果区间$[l,r]$的中位数小于$k$,则$\sum_{i=l
阅读全文
摘要:题目 "点这里" 看题目。 BZOJ 上面是权限题目。 分析 第 K 小的问题无非两种方法——构造法或者二分法。 很显然如果构造的话在这里不太好处理,因此我们可以对于每一个点$u$,二分一下这个第 K 小路的长度。 检查的方法很简单,也就是计算一下从$u$出发的路径中,是否有 K 条以上的路径的长度
阅读全文

浙公网安备 33010602011771号