時間限制:1000 ms | 記憶體限制:65535 kb
難度:5
描述南將軍手下有n個士兵,分別編號1到n,這些士兵的殺敵數都是已知的。
小工是南將軍手下的軍師,南將軍經常想知道第m號到第n號士兵的總殺敵數,請你幫助小工來回答南將軍吧。
南將軍的某次詢問之後士兵i可能又殺敵q人,之後南將軍再詢問的時候,需要考慮到新增的殺敵數。
輸入只有一組測試資料
第一行是兩個整數n,m,其中n表示士兵的個數(1
輸出 對於每次查詢,輸出乙個整數r表示第m號士兵到第n號士兵的總殺敵數,每組輸出佔一行
樣例輸入
5 6樣例輸出1 2 3 4 5
query 1 3
add 1 2
query 1 3
add 2 3
query 1 2
query 1 5
68820
#include int c[1000000],n;int lowbit(int n)
void add(int i,int delta)
}int sum(int i)
return sum;
} int main()
while(m--)
return 0;
}
//tle
#include#includeint a[1000000];
int main()
{ int num,t,i,j,k,p;
char c[6];
scanf("%d%d",&num,&t);
a[0]=0;
for(i=1;i<=num;i++)
scanf("%d",a+i);
for(i=1;i<=num;i++)
a[i]+=a[i-1];
for(i=0;i#includeint a[1000000];
int main()
{ int num,t,i,j,k,p;
char c[6];
scanf("%d%d",&num,&t);
a[0]=0;
for(i=1;i<=num;i++)
scanf("%d",a+i);
getchar();
for(i=1;i<=num;i++)
a[i]+=a[i-1];
for(i=0;i
NYOJ 116 樹狀陣列
時間限制 1000 ms 記憶體限制 65535 kb 難度 5 描述 南將軍手下有n個士兵,分別編號1到n,這些士兵的殺敵數都是已知的。小工是南將軍手下的軍師,南將軍經常想知道第m號到第n號士兵的總殺敵數,請你幫助小工來回答南將軍吧。南將軍的某次詢問之後士兵i可能又殺敵q人,之後南將軍再詢問的時候...
NYOJ116 線段樹 樹狀陣列
題目傳送門 戳一戳 注意陣列大小,一般我們用線段樹,都開四倍空間。但是這道題資料量是一百萬,四倍開不了 所以我們就不能開四倍,而要計算一下空間,避免浪費。計算方法就是 1000000 找到2的n次方剛好大於一百萬的那個數 就是2的20次方是1048576 然後再拿1048576 x 2 209715...
nyoj 116 士兵殺敵(二) 樹狀陣列
時間限制 1000 ms 記憶體限制 65535 kb 難度 5 描述 南將軍手下有n個士兵,分別編號1到n,這些士兵的殺敵數都是已知的。小工是南將軍手下的軍師,南將軍經常想知道第m號到第n號士兵的總殺敵數,請你幫助小工來回答南將軍吧。南將軍的某次詢問之後士兵i可能又殺敵q人,之後南將軍再詢問的時候...