思想:前n项和
1、前缀和的概念
对于一个给定的数组A,它的前缀和数组S中[i]表示从第一个元素到第i个元素的总和。S[i] =
前缀和作用:在O(1)的时间求出数组任意区间的区间和。
2、算法模板
int n = 10;
int[] arr = new int[n];
long[] sum = new long[n+1];
for (int i = 0; i <= n; i++) {
sum[i] = sum[i - 1] + arr[i - 1];
}
一维数据
方法一:
暴力求解,时间复杂度:O(n * m)
代码:
输入一个长度为n
的整数序列。接下来再输入m
个询问,每个询问输入一对l
, r
。对于每个询问,输出原序列中从第l
个数到第r
个数的和。
#include "function.h"
#include<stdio.h>
int main()
{
c