适用于
需要快速求一个静态数组的某一个区间内的和
我们用S[N]数组来存储A[N]数组
第一:S0=0(因为边界问题,S0一定要等于0);
第二:Sn=A1+......An;
第三:Sn也等于Sn-1;
总结:所以在有连续多次询问时候,我们可以做一个S数组,存储A数组内的前N项和,这样每次的询问,时间复杂度都会从O(N)降到了O(1);以空间换时间;
前缀和也可以用树装数组,和线段树来说
但前缀和效率更高,但是树装组和线段树可以一边查一边修改
例题:前缀和
输入一个长度为 n的整数序列。接下来再输入 m个询问,每个询问输入一对 l,r。
对于每个询问,输出原序列中从第 l个数到第 r个数的和。