士兵杀敌(一)
时间限制:
1000 ms | 内存限制:
65535 KB
难度:
3
-
描述
-
南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。
小工是南将军手下的军师,南将军现在想知道第m号到第n号士兵的总杀敌数,请你帮助小工来回答南将军吧。
注意,南将军可能会问很多次问题。
#include<stdio.h>
long long a[1000000];
int main()
{
long long n,m,d,b,c;
int i,j;
scanf("%lld%lld",&n,&m);
scanf("%lld",&a[0]);
for(i=1;i<n;i++)
{
scanf("%lld",&a[i]);
a[i]+=a[i-1];
}
while(m--)
{
scanf("%lld%lld",&d,&b);
if(d>b)
{
c=d;
d=b;
b=c;
}
printf("%lld\n",a[b]-a[d-1]);
}
}
这个是数据结构,网上说用到的是树状结构,但是这一题感觉没
有必要!