算法——差分

前缀和与差分的核心思想是预处理,可以在暴力枚举的过程中,快速给出查询的结果,从而优化时间复杂度。是经典的用空间替换时间的做法。

学完差分之后,大家会发现,前缀和与差分是一对互逆的运算。

【模板】差分_牛客题霸_牛客网

描述

对于给定的长度为 nn 的数组 {a1,a2,...,an}{a1​,a2​,...,an​} ,你需要维护:

  1. 1.​ 区间修改:将 [l,r][l,r] 这个区间中的全部元素增加 xx ;

在全部修改完成后,直接输出最终的数组。

输入描述:

第一行输入两个整数 n,q(1≦n,q≦5×105)n,q(1≦n,q≦5×105) 代表数组中的元素数量、操作次数。

第二行输入 nn 个整数 a1,a2,...,an(−107≦ai≦107)a1​,a2​,...,an​(−107≦ai​≦107) 代表初始数组。

此后 qq 行,每行输入三个整数 l,r,d(1≦l≦r≦n; −107≦d≦107)l,r,d(1≦l≦r≦n; −107≦d≦107) 代表一次修改。

输出描述:

在一行上输出 nn 个整数,代表最终的数组。

示例1

输入:

复制代码
6 2
1 1 4 5 1 4
1 6 -3
4 4 1

复制输出:

复制代码
-2 -2 1 3 -2 1

复制说明:

复制代码
对于第一次操作,数组变为 {−2,−2,1,2,−2,1}{−2,−2,1,2,−2,1}(全局修改);
对于第二次操作,数组变为 {−2,−2,1,3,−2,1}{−2,−2,1,3,−2,1}(单点修改)。
相关推荐
永远都不秃头的程序员(互关)1 天前
【决策树深度探索(一)】从零搭建:机器学习的“智慧之树”——决策树分类算法!
算法·决策树·机器学习
程序员-King.1 天前
day161—动态规划—最长递增子序列(LeetCode-300)
算法·leetcode·深度优先·动态规划·递归
西柚小萌新1 天前
【计算机视觉CV:目标检测】--3.算法原理(SPPNet、Fast R-CNN、Faster R-CNN)
算法·目标检测·计算机视觉
高频交易dragon1 天前
Hawkes LOB Market从论文到生产
人工智能·算法·金融
_OP_CHEN1 天前
【算法基础篇】(五十)扩展中国剩余定理(EXCRT)深度精讲:突破模数互质限制
c++·算法·蓝桥杯·数论·同余方程·扩展欧几里得算法·acm/icpc
福楠1 天前
C++ STL | set、multiset
c语言·开发语言·数据结构·c++·算法
enfpZZ小狗1 天前
基于C++的反射机制探索
开发语言·c++·算法
炽烈小老头1 天前
【每天学习一点算法 2026/01/22】杨辉三角
学习·算法
MicroTech20251 天前
微算法科技(NASDAQ :MLGO)量子安全区块链:PQ-DPoL与Falcon签名的双重防御体系
科技·算法·安全
努力也学不会java1 天前
【Spring Cloud】 服务注册/服务发现
人工智能·后端·算法·spring·spring cloud·容器·服务发现