【题目来源】:https://www.51nod.com
【题意&&思路】
求l到l+dis区间的和,咋一看,还以为是非线段树不可。。
转念一想,或许前缀和就可以了。。。
【代码】
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long LL;
LL arr[50000+10];
int main()
{
int n;
scanf("%d",&n);
arr[0]=0;
for(int i=1;i<=n;i++)
{
scanf("%lld",&arr[i]);
arr[i]+=arr[i-1];
}
int q;
scanf("%d",&q);
while(q--)
{
int l,dis;
scanf("%d%d",&l,&dis);
printf("%lld\n",arr[l+dis-1]-arr[l-1]);
}
}