前缀和
题目
注意查询的不是起点和终点而是起点和长度
#include <iostream>
#include <unordered_map>
using namespace std;
typedef long long ll;
const int N = 5e5+5;
ll S[N];
int main(){
ll n, m, x;
scanf("%lld", &n);
for(int i = 1; i <= n; i++){
scanf("%lld", &x);
S[i] = S[i-1] + x;
}
int u, v;
scanf("%lld", &m);
while(m--){
scanf("%d%d", &u, &v);
printf("%lld\n", S[u+v-1]-S[u-1]);
}
return 0;
}