题目链接:https://bzoj.org/p/P01249
尝试:110 已通过:46 难度:5
Description
对于一个有N(N<1000)个元素的数组进行K(K<2100)次区间求和。
Input
第一行:一个正整数N.第二行:N个正整数,表示数组中的N个元素,每个整数不超过10000,数值之间用一个空格分隔.第三行:一个正整数K,表示进行K次区间求和.
接下来K行:每行两个整数i和j,表示计算第i个数组元素到第j个数组元素的和,包括第i个和第j个.
Output
共K行,每行对应一次求和的结果。
Samples
输入数据 1
10
1 2 3 4 5 6 7 8 9 10
3
1 3
1 5
6 10
输出数据 1
6
15
40
Limitation
1s, 1024KiB for each test case.
Sol:求第i个和第j个元素之间所有数字和,很简单.
代码:
#include<bits/stdc++.h>
using namespace std;
int a[10010],b[10010],c[10010];
int main(){
int n,k;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
cin>>k;
for(int i=1;i<=k;i++){
int sum=0;
cin>>b[i]>>c[i];
for(int j=b[i];j<=c[i];j++)
sum+=a[j];
cout<<sum<<endl;
}
return 0;
}
创作不易,点个赞再走吧!
标签:10,一维,求和,元素,int,数组,10010 From: https://www.cnblogs.com/Ace-29/p/18288059