记录编号 |
131078 |
评测结果 |
AAAAAAAAAA |
题目名称 |
求和问题 |
最终得分 |
100 |
用户昵称 |
Golden Dawn |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
3.152 s |
提交时间 |
2014-10-23 20:32:33 |
内存使用 |
4.89 MiB |
显示代码纯文本
#include<iostream>
#include<stdio.h>
#include<algorithm>
using namespace std;
int N,m,n[200010],i[200010],j[200010],q,e,r[200010],t,y,f,g,h;
long long w[200010];
//n[] 为 长度为N的整数数列
//下面m行,每行两个整数i与j(i<=j),表示求和的起始和终止位置
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!取消注释啊啊啊啊啊!!!
int main(){
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout); // 取消注释啊啊啊啊啊!!!
cin>>N;
for(q=0;q<N;q++){ //取消注释啊啊啊啊啊!!!
cin>>n[q];
if(w>0){
w[q]=w[q-1]+n[q];
}// w[q] 即长度为N的整数数列 //取消注释啊啊啊啊啊!!!
else{w[0]=n[0];
}
} //的前q项和
cin>>m;
for(e=0;e<m;e++){
cin>>i[e]>>j[e];//i[e] j[e] 为第e-1行的数 即 数列w[]的起始 //取消注释啊啊啊啊啊!!!
}
for(t=0;t<m;t++){
cout<<w[j[t]-1]-w[i[t]-1]+n[i[t]-1]<<endl; //取消注释啊啊啊啊啊!!!
}
// for(g=0;g<m;g++){
// cout<<w[g]<<endl; } //取消注释啊啊啊啊啊!!!
return 0;
}