差分数组

闻缺陷则喜何志丹14 天前
c++·算法·leetcode·分块·差分数组·逆元
【分块 差分数组 逆元】3655区间乘法查询后的异或 II|2454数论:质数、最大公约数、菲蜀定理 C++差分数组 分块给你一个长度为 n 的整数数组 nums 和一个大小为 q 的二维整数数组 queries,其中 queries[i] = [li, ri, ki, vi]。 对于每个查询,需要按以下步骤依次执行操作: 设定 idx = li。 当 idx <= ri 时: 更新:nums[idx] = (nums[idx] * vi) % (10^9 + 7)。 将 idx += ki。 在处理完所有查询后,返回数组 nums 中所有元素的 按位异或 结果。
资深web全栈开发15 天前
算法·leetcode·矩阵·golang·差分数组
力扣2536子矩阵元素加1-差分数组解法详解给你一个正整数 n,表示最初有一个 n x n 的矩阵,每个元素都是 0。给你一个二维整数数组 queries,其中 queries[i] = [row1, col1, row2, col2]。对于每个查询 i,需要找到所有满足 row1 <= x <= row2 且 col1 <= y <= col2 的位置 (x, y),并将这个位置上的元素加 1。
Tisfy6 个月前
算法·leetcode·二分查找·题解·差分数组
LeetCode 3356.零数组变换 II:二分查找 + I的差分数组力扣题目链接:https://leetcode.cn/problems/zero-array-transformation-ii/
Tisfy6 个月前
算法·leetcode·题解·差分数组
LeetCode 3355.零数组变换 I:差分数组力扣题目链接:https://leetcode.cn/problems/zero-array-transformation-i/
闻缺陷则喜何志丹8 个月前
c++·算法·二分查找·洛谷·离散化·差分数组·数组数组
【二分查找 树状数组 差分数组 离散化 】P6172 [USACO16FEB] Load Balancing P|省选-C++二分查找 C++差分数组 【C++】树状数组的使用、原理、封装类、样例本题与 银组同名题目 在题意上一致,唯一的差别是数据范围。
羑悻的小杀马特1 年前
数据结构·c++·算法·差分数组·区间问题
探秘差分数组:算法星河中闪耀的区间掌控之星本篇鸡汤:夜深人静,正是你追梦的时刻。熬过这段孤独,未来会因你而闪亮!探索新知,点亮智慧!关注我,一起成长,点赞收藏不迷路!
闻缺陷则喜何志丹1 年前
c++·算法·字符串·力扣·差分数组·移位·方向
【C++差分数组】2381. 字母移位 II|1793C++差分数组给你一个小写英文字母组成的字符串 s 和一个二维整数数组 shifts ,其中 shifts[i] = [starti, endi, directioni] 。对于每个 i ,将 s 中从下标 starti 到下标 endi (两者都包含)所有字符都进行移位运算,如果 directioni = 1 将字符向后移位,如果 directioni = 0 将字符向前移位。 将一个字符 向后 移位的意思是将这个字符用字母表中 下一个 字母替换(字母表视为环绕的,所以 ‘z’ 变成 ‘a’)。类似的,
闻缺陷则喜何志丹1 年前
数据结构·c++·差分数组·区间合并·二维差分·映射差分
差分数组汇总算法与数据结构汇总令 a[i] = ∑ j : 0 i v D i f f [ i ] \sum_{j:0}^{i}vDiff[i] ∑j:0ivDiff[i] 如果 vDiff[i1]++,则a[i1…]全部++ 如果vDiff[i2]–,则a[i2…]全部–。 令11 < i2 ,则: { a [ i ] 不变,不受加减影响 i < i 1 a [ i ] 不变,加减抵消 i > = i 2 a [ i ] + + o t h e r \begin{cases} a[i]不变,不受加减影响 && i
闻缺陷则喜何志丹2 年前
c++·算法·leetcode·图论·差分数组·分类讨论·被2整除
【差分数组】【图论】【分类讨论】【整除以2】100213按距离统计房屋对数目【动态规划】【数学】【C++算法】18赛车差分数组 图论 分类讨论 整除以2给你三个 正整数 n 、x 和 y 。 在城市中,存在编号从 1 到 n 的房屋,由 n 条街道相连。对所有 1 <= i < n ,都存在一条街道连接编号为 i 的房屋与编号为 i + 1 的房屋。另存在一条街道连接编号为 x 的房屋与编号为 y 的房屋。 对于每个 k(1 <= k <= n),你需要找出所有满足要求的 房屋对 [house1, house2] ,即从 house1 到 house2 需要经过的 最少 街道数为
闻缺陷则喜何志丹2 年前
c++·数学·算法·leetcode·贪心·差分数组·最少
【数学】LeetCode1526: 形成目标数组的子数组最少增加次数【贪心算法】【中位贪心】.执行操作使频率分数最大数学给你一个整数数组 target 和一个数组 initial ,initial 数组与 target 数组有同样的维度,且一开始全部为 0 。 请你返回从 initial 得到 target 的最少操作次数,每次操作需遵循以下规则: 在 initial 中选择 任意 子数组,并将子数组中每个元素增加 1 。 答案保证在 32 位有符号整数以内。 示例 1: 输入:target = [1,2,3,2,1] 输出:3 解释:我们需要至少 3 次操作从 inti
我是有底线的