hdu1754 線段樹單點替換 區間最值模板

2022-02-19 20:25:42 字數 963 閱讀 4182

題意:中文題誒~

思路:線段樹單點替換&區間最大值查詢模板

**:

1 #include 2 #include 3 #include 

4#define lson l, mid, rt << 1

5#define rson mid + 1, r, rt << 1 | 1

6using

namespace

std;78

const

int maxn = 2e5 + 10;9

int max[maxn << 2];//

max[rt]儲存rt對應區間的最大值

1011

void push_up(int rt)

1415

//建樹

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

21int mid = (l + r) >> 1;22

build(lson);

23build(rson);

24 push_up(rt);//

向上更新25}

2627

//單點替換

28void updata(int p, int sc, int l, int r, int rt)

33int mid = (l + r) >> 1;34

if(p <=mid) updata(p, sc, lson);

35else

updata(p, sc, rson);

36 push_up(rt);//

向上更新節點37}

3839

//求區間最值

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

4849

int main(void)61

}62return0;

63 }

view code

HDU 1754 線段樹單點更新

很多學校流行一種比較的習慣。老師們很喜歡詢問,從某某到某某當中,分數最高的是多少。這讓很多學生很反感。不管你喜不喜歡,現在需要你做的是,就是按照老師的要求,寫乙個程式,模擬老師的詢問。當然,老師有時候需要更新某位同學的成績。input 本題目包含多組測試,請處理到檔案結束。在每個測試的第一行,有兩個...

hdu 1754 基礎線段樹

題目鏈結 思路 比較簡單的線段樹,區間求最值,單點更新。讀入字元的時候,最好用字元陣列儲存,使用 s讀入,如果使用 c 會t 好像是會吃掉換行符。include include include define maxn 2000005 using namespace std int stu maxn ...

線段樹入門 hdu1754

題目 很多學校流行一種比較的習慣。老師們很喜歡詢問,從某某到某某當中,分數最高的是多少。這讓很多學生很反感。不管你喜不喜歡,現在需要你做的是,就是按照老師的要求,寫乙個程式,模擬老師的詢問。當然,老師有時候需要更新某位同學的成績。input本題目包含多組測試,請處理到檔案結束。在每個測試的第一行,有...