一维差分
给区间[l, r]中的每个数加上c:B[l] += c, B[r + 1] -= c
二维差分
给以(x1, y1)为左上角,(x2, y2)为右下角的子矩阵中的所有元素加上c:
S[x1, y1] += c, S[x2 + 1, y1] -= c, S[x1, y2 + 1] -= c, S[x2 + 1, y2 + 1] += c
本模板来自:AcWing算法基础课
相关博客:差分
这篇博客介绍了差分算法的基础知识,包括一维差分和二维差分的实现方式。一维差分通过B[l]+=c和B[r+1]-=c更新区间元素,而二维差分则使用四个操作S[x1,y1]+=c, S[x2+1,y1]-=c, S[x1,y2+1]-=c, S[x2+1,y2+1]+=c来更新矩阵子区域的元素。这些算法在数据结构和算法中有着广泛应用。
给区间[l, r]中的每个数加上c:B[l] += c, B[r + 1] -= c
给以(x1, y1)为左上角,(x2, y2)为右下角的子矩阵中的所有元素加上c:
S[x1, y1] += c, S[x2 + 1, y1] -= c, S[x1, y2 + 1] -= c, S[x2 + 1, y2 + 1] += c
本模板来自:AcWing算法基础课
相关博客:差分
1030
536
391

被折叠的 条评论
为什么被折叠?