一维前缀和
具体做法:
首先做一个预处理,定义一个sum[]数组,sum代表a数组中前i个数的和。
原理:
sum[r] = a[1] + a[2] + a[3] + a[l-1] + a[l] + a[l+1] ...... a[r];
sum[l - 1] = a[1] + a[2] + a[3] + a[l - 1];
sum[r] - sum[l - 1] = a[l] + a[l + 1]+......+ a[r];
图解
求前缀和运算:
[code]const int N = 1e5+10;int sum[N], a[N]; //sum = a[1] + a[2] + a[3] ..... a;for(int i = 1; i |