
差分
文章平均质量分 69
oj
Ypuyu
Ypuyu
展开
-
[差分+模板] 差分模板
文章目录0. 前言1. 一维差分2. 二维差分0. 前言对数组某个区间内都加、减一个值的话,差分数组可以达到 O(1)O(1)O(1) 的时间完成这个操作。预处理得到的差分数组的前缀和是原数组。对原数组 [l,r][l, r][l,r] 区间加上 ccc,则仅需对差分数组的 a[l]+ca[l] + ca[l]+c,a[r+1]−ca[r + 1] - ca[r+1]−c 即可。最后再求一遍前缀和即可。差分数组的定义为:差分数组的前缀和是原数组,那么怎么构造一个差分数组呢?其实我们并不需要想太多。原创 2020-10-20 09:20:58 · 473 阅读 · 0 评论 -
[E差分] lc1893. 检查是否区域内所有整数都被覆盖(差分计数+模拟+双周赛54_1)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:1893. 检查是否区域内所有整数都被覆盖2. 题目解析双周赛第一题,谁正经直接写差分啊,数据范围这么小…直接暴力就行了。方法一:暴力判断每个点是否在区间中出现过就行了,只要有一个区间包含该点,则该点就出现过。方法二:差分这方法有点秀。区间 [l, r] 给定,运用差分的思想,diff[l]++,diff[r+1]--,最后做一遍前缀和,表示有一个区间覆盖了 [l,r] 的所有数。前缀和统计完毕后仅需判断 [left, ri原创 2021-07-23 00:40:27 · 163 阅读 · 0 评论 -
[差分] aw3729. 改变数组元素(差分+区间合并+好题)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:3729. 改变数组元素相关:[区间合并+模板] 区间合并模板(贪心+区间问题)2. 题目解析很明显的区间合并问题,但是可以使用差分来做,需要稍作改动。抽象算法的能力可能是最为缺失的。区间合并:区间合并时间是 O(nlogn)O(nlogn)O(nlogn),是取决于排序的时间复杂度。相当于将一个区间 [l,r][l, r][l,r] 的数字全部赋值为 1。最后将这些区间合并即可,区间中的数字全为 1。差分:由区间合并的原创 2021-07-01 19:51:18 · 180 阅读 · 0 评论 -
[差分] aw3617. 子矩形计数(差分+好题+思维)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:3617. 子矩形计数2. 题目解析问题思维过程比较平滑。思维难度并不高。当 a 数组为 0 时,本行全为 0,当 b 数组为 0 时,本列全为 0。若答案满足的全 1 子矩阵,可表示为 k=h*w,那么等价于 a 数组中含有 h 长度连续 1,b 数组含有 w 长度的连续 1。故问题转化为求出一个数组 s,s[i] 表示 a 或 b 数组中长度为 i 的连续 1 的区间个数。然后思路就被卡在这没动过了…直接放 y总笔记了:将求原创 2021-06-02 21:51:21 · 118 阅读 · 2 评论