#include #include const int maxn = 55555;
int sum[maxn<<2];
void pushup(int rt)
void build(int l, int r, int rt)
int m = (l + r) >> 1;
build(l, m, rt<<1);
build(m+1, r, rt<<1|1);
pushup(rt);
}void update(int p, int add, int l, int r, int rt)
int m = (l + r) >> 1;
if (p <= m) update(p, add, l, m, rt<<1);
else update(p, add, m+1, r, rt<<1|1);
pushup(rt);
}int query(int l, int r, int l, int r, int rt)
int main()
else if (strcmp(str, "sub") == 0)
else
} }return 0;
}
線段樹 敵兵布陣
a 敵兵布陣 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status practice hdu 1166 description c國的死對頭a國這段時間正在進行軍事演習,所以c國間諜頭子derek和他...
線段樹 敵兵布陣
c國的死對頭a國這段時間正在進行軍事演習,所以c國間諜頭子derek和他手下tidy又開始忙乎了。a國在海岸線沿直線布置了n個工兵營地,derek和tidy的任務就是要監視這些工兵營地的活動情況。由於採取了某種先進的監測手段,所以每個工兵營地的人數c國都掌握的一清二楚,每個工兵營地的人數都有可能發生...
線段樹 敵兵布陣 例項入門理解
更新節點,區間求和 include include using namespace std int sum int ac 50010 struct nodet 140000 建樹思路 a 對於二分到的每乙個結點,給它的左右端點確定範圍。b 如果是葉子節點,儲存要維護的資訊。c 狀態合併。void b...