基础前缀和和差分

前缀和用于在O(1)的时间内求某一给定的数组的其中任意长度的和,它其实就是对一给定了的数组计算得出一个前缀和数组,再利用这个计算出来的数组去求某一段的和

例题链接

#include
using namespace std;
int n, m;
const int N = 1e5 + 10;
int a[N];
int main()
{
    scanf("%d%d", &n, &m);
    for (int i = 1; i

差分和前缀和互为逆操作,差分用于求在一个数组上不固定一段的同时加上某一个数或者同时减去某一个数。给定一个a数组,利用a的后一项减去前一项得到的值创建一个新数组,那么这个数组对于原来的数组就叫做差分数组,在某一区间同时加减一个数只需要对这个差分数组的给定的区间的开始和结尾操作即可完成,最后对差分数组进行前缀和操作就可以得到操作完成后的原数组

例题链接

#include
using namespace std;
const int N = 1e5 + 10;
int a[N], b[N];
int main()
{
    int n, m;
    scanf("%d%d", &n, &m);
    for(int i = 1; i

Original: https://www.cnblogs.com/amour233/p/16466841.html
Author: LYL233
Title: 基础前缀和和差分

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/644157/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球