7 22 O題 敵兵布陣(線段樹)

2021-07-22 10:05:41 字數 1329 閱讀 2114

lily 特別喜歡養花,但是由於她的花特別多,所以照料這些花就變得不太容易。她把她的花依次排成一行,每盆花都有乙個美觀值。如果lily把某盆花照料的好的話,這盆花的美觀值就會上公升,如果照料的不好的話,這盆花的美觀值就會下降。有時,lily想知道某段連續的花的美觀值之和是多少,但是,lily的算術不是很好,你能快速地告訴她結果嗎?

區間求和以及區間更新,線段樹

#include 

using

namespace

std;

typedef

long

long ll;

const

int maxn = 5e4;

/*-------------------------------------*/

#define max(a,b) (a>b)?a:b

#define min(a,b) (a>b)?b:a

#define lson l , m , rt << 1

#define rson m + 1 , r , rt << 1 | 1

int lazy[maxn << 2];

int sum[maxn << 2];

void pushup(int rt)

void pushdown(int rt, int m)

}void build(int l, int r, int rt)

int m = (l + r) >> 1;

build(lson);

build(rson);

pushup(rt);

}void update(int l, int r, int c, int l, int r, int rt)

pushdown(rt , r - l + 1);

int m = (l + r) >> 1;

if (l <= m)

if (m < r)

pushup(rt);

}int query(int l, int r, int l, int r, int rt)

pushdown(rt , r - l + 1);

int m = (l + r) >> 1;

int ret = 0;

if (l <= m)

if (m < r)

return ret;

}/*----------------------------------*/

int main()

if(str[0] == 'a')

if(str[0] == 's')

scanf("%s", str);}}

}

敵兵布陣 線段樹

description c國的死對頭a國這段時間正在進行軍事演習,所以c國間諜頭子derek和他手下tidy又開始忙乎了。a國在海岸線沿直線布置了n個工兵營地,derek和tidy的任務就是要監視這些工兵營地的活動情況。由於採取了某種先進的監測手段,所以每個工兵營地的人數c國都掌握的一清二楚,每個工...

敵兵布陣 線段樹

敵兵布陣 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description c國的死對頭a國這段時間正在進行軍事演習,所以c國間諜頭子derek和他手下tidy又開始忙乎了。a國在海岸線沿...

敵兵布陣 線段樹

c國的死對頭a國這段時間正在進行軍事演習,所以c國間諜頭子derek和他手下tidy又開始忙乎了。a國在海岸線沿直線布置了n個工兵營地,derek和tidy的任務就是要監視這些工兵營地的活動情況。由於採取了某種先進的監測手段,所以每個工兵營地的人數c國都掌握的一清二楚,每個工兵營地的人數都有可能發生...