版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:[https://blog.csdn.net/shiliang97/article/details/100561799](https://blog.csdn.net/shiliang97/article/details/100561799)
Description
阿生的朋友都知道阿生是个吃货,由此而来带来的问题是阿生每天都在长胖,虽然他丝毫都不在意。现在阿生想知道任意两天之间,他一共吃胖了多少斤,请你帮一下他吧
Input
输入第一行是两个整数n,m,表示有n天和m组测试数据
第二行是n个数,表示第i天阿生胖了多少
随后m行,每行输入两个数a,b,代表第a天和第b天
1 <= n, m<= 10^5,
1 <= a, b<= 1000,
Output
对于给定的a和b,请你计算a到b之间阿生一共胖了多少(包括a和b两个端点)
Sample Input 1
5 3
1 2 3 4 5
1 2
2 3
3 4
Sample Output 1
3
5
7
#include<iostream>
#include<vector>
using namespace std;
int main(){
int m,n,k;
cin>>m>>n;
vector<long long int>num2(m+1);
for(int i=1;i<=m;i++){
cin>>k;
num2[i]=num2[i-1]+num[i];
}
int flag=0;
for(int i=0;i<n;i++){
int a,b;
cin>>a>>b;
cout<<num2[b]-num2[a-1]<<endl;
}
return 0;
}