12 2021 档案
题解 CF797E Array Queries
摘要:分析 根号分治题。 发现 \(p\) 是单增的,且每次至少增加 \(k\)。所以如果 \(k\) 很大,我们直接暴力跳很少的次数就能跳出去,如果确定了一个 \(k\) 值,我们可以倒序 \(O(n)\) 处理出每个位置作为起点需要跳多少次才能跳出。 如果将前后两个综合起来,在 \(k\) 大于 \(
阅读全文
题解 P5787 二分图 /【模板】线段树分治
摘要:分析 线段树分治呢,处理的就是这些基于时间上的物品加入删除问题,我们将所有事件离线处理,每一个询问代表一个时刻,对于每一个物品,处理它所存在的时段,概括一下就是用线段树来处理每一个物品能对哪些询问起作用。 所以线段树每一个节点就代表了一个时段,而在询问中我们通常是找某一个时间点,所以类似于标记永久化
阅读全文
题解 CF1290F Making Shapes
摘要:分析 因为题目要求最终形状为一个凸包,所以你只要确定了要选哪些向量以及每个向量用几次,最终形成的那个多边形就固定了。 所以只需考虑最终式子是什么,得到 \(\sum_{i=1}^nx_i=0\),\(\sum_{i=1}^ny_i=0\)。然后你画出图形后会发现横纵轴的最长扩展长度就是只为正的 \(
阅读全文
题解 CF601E A Museum Robbery
摘要:分析 第一道线段树分治题祭。 线段树分治呢,处理的好像就是这些基于时间上的物品加入删除问题,我们将所有事件离线处理,每一个询问代表一个时刻,对于每一个物品,处理它所存在的时段,概括一下就是用线段树来处理每一个物品能对哪些询问起作用。 所以线段树每一个节点就代表了一个时段,而在询问中我们通常是找某一个
阅读全文
题解 P7706 「Wdsr-2.7」文文的摄影布置
摘要:分析 这道题属于考察对于合并时不同最佳状态的讨论,我们考虑最后选出来的那三张照片位置在哪里,发现有四种情况(中间隔开处为线段树区间的 \(mid\))。 1、\(ijk\)|。 2、|\(ijk\)。 3、\(ij\)|\(k\)。 4、\(i\)|\(jk\)。 显然前两种情况就是子节点的答案,而
阅读全文
题解 P3705 [SDOI2017]新生舞会
摘要:分析 做了几道分数规划题,选一些来写题解。 首先观察答案形式,就是求最终 \((\dfrac{\sum a_i'}{\sum b_i'})\geqslant ans\) 最大的 \(ans\),在转化一下形式,就是 \(\sum a_i'-ans\times b_i'\geqslant 0\)。 所
阅读全文
计算几何
摘要:计算几何 最基础的东西 向量 高一的东西,不过多解释,可以理解为以 \((x,y)\) 表示一个有方向的线段 向量加减直接是 \(x,y\) 与另一个向量的 \(x,y\) 直接相加减,乘法有三种,与一个数相乘,直接 \(x,y\) 扩大为数字倍,向量间乘法都是得到一个数,分为两种,令两个向量为 \
阅读全文
后缀数组
摘要:##后缀数组 ###解决什么? 最基本的应用就是对一个字符串的所有后缀按照字典序进行排序,但对于最暴力的做法,在快速排序中(当然你用冒泡更暴力)\(cmp\) 函数暴力从头到尾枚举到第一位不同的位置 \(O(n^2logn)\),再一步优化的话就是二分来找到这一个位置 \(O(nlog^2n)\),
阅读全文
浙公网安备 33010602011771号