1 算法笔记
2.代码示例
3.代码解析
#include<iostream>
using namespace std;
const int maxn = 1010000;
int a[maxn],s[maxn];//a数组是用来存放数组的,s是用来存放前n项数组的和
int m,n;
int main(){
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);//更新数组
for(int i=1;i<=n;i++) s[i] = s[i-1] + a[i];//更新数组的和
int l,k;
while(m--){
scanf("%d%d",&l,&k);
printf("%d\n",s[k] - s[l-1]);//求al+....+ak
}
return 0;
}