題意:給一串串行,可以進行3種操作:對某個點i的值增加j;對某個點i的值減少j;查詢區間(i, j)的子串和
思路:單點修改,區間查詢,典型樹狀陣列題目
#include#include#include#include#include#include#define lowbit(x) (x&-x)
using namespace std;
typedef long long ll;
const int maxn = 5e4+5;
const int inf = 0x3f3f3f3f;
int t, n, a[maxn], c[maxn];
void add(int x, int t)
void sub(int x, int t)
int sum(int x)
int main()
if (s == "add")
if (s == "sub")
} }return 0;
}
HDU 1166 敵兵布陣 樹狀陣列
用樹狀陣列很簡單,太晚了,貼下 睡覺去。另,研究線段樹的時候,發現網上流傳著有幾種不同的線段樹,最正宗的是以單位區間為單位,只能處理線段 另外還有幾種葉子結點是點的,這種也可以用來處理點,所以這題是可以用這種線段樹做的。還搞不太清楚它們之間的關係。mark一下,明天再說。include includ...
HDU 1166 敵兵布陣 樹狀陣列
problem description c國的死對頭a國這段時間正在進行軍事演習,所以c國間諜頭子derek和他手下tidy又開始忙乎了。a國在海岸線沿直線布置了n個工兵營地,derek和tidy的任務就是要監視這些工兵營地的活動情況。由於採取了某種先進的監測手段,所以每個工兵營地的人數c國都掌握的...
HDU 1166 敵兵布陣 (樹狀陣列)
敵兵布陣 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description c國的死對頭a國這段時間正在進行軍事演習,所以c國間諜頭子derek和他手下tidy又開始忙乎了。a國在海岸線沿...