51Nod 1081 子段求和
程序员文章站
2022-05-11 17:04:56
...
#include <iostream>
using namespace std;
int main()
{
long long i,j,k,n,m,a[233333],b[233333],sum=0;
cin>>i;
for(j=1;j<=i;j++) cin>>a[j];
cin>>k;
while(k--){
sum=0;
cin>>n>>m;
for(i=n;i<m+n;i++) sum=sum+a[i];
cout<<sum<<endl;
}
return 0;
}
// 时间超限
#include <iostream>
using namespace std;
int main()
{
long long i,j,k,n,m,a[50550],sum[50550];//之前这里是233333可是无法输入,但是前面的可以输入
while(cin>>i){
sum[0]=0;
for(j=1;j<=i;j++) {
cin>>a[j];
sum[j]=sum[j-1]+a[j];
}
cin>>k;
while(k--){
cin>>n>>m;
cout<<sum[n+m-1]-sum[n-1]<<endl;
}
}
return 0;
} //然后这玩意过了
下一篇: 51nod 1081 子段求和