洛谷1198 JSOI2008 最大數

2021-08-17 04:06:54 字數 594 閱讀 3842

題目:最大數

思路:線段樹。最開始就建乙個m個點的線段樹,這樣對數列增加的操作就變成線段樹的單點修改了。

注意:在l=0時,要輸出0,所以不可以把線段樹的值初始化成-inf。另外注意邊界,不然會mle。建議在bzoj過了的也在luogu交一下,這題bzoj的資料比較水一點。

**:

#includeusing namespace std;

#define maxn 200000

int n,md;

int t=0,p;

int a[maxn*4+5];

int m=0;

void update(int o,int l,int r)

int mid=l+(r-l)/2;

int lc=o*2,rc=o*2+1;

update(lc,l,mid),update(rc,mid+1,r);

a[o]=max(a[lc],a[rc]);

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

int main()

if(x=='q')

} return 0;

}

最大數 洛谷1198 JSOI2008

題意 現在請求你維護乙個數列,要求提供以下兩種操作 1 查詢操作。語法 q l 功能 查詢當前數列中末尾l個數中的最大的數,並輸出這個數的值。限制 l不超過當前數列的長度。l 0 2 插入操作。語法 a n 功能 將n加上t,其中t是最近一次查詢操作的答案 如果還未執行過查詢操作,則t 0 並將所得...

洛谷 P1198 JSOI2008 最大數

p1198 jsoi2008 最大數現在請求你維護乙個數列,要求提供以下兩種操作 1 查詢操作。語法 q l 功能 查詢當前數列中末尾l個數中的最大的數,並輸出這個數的值。限制 l不超過當前數列的長度。2 插入操作。語法 a n 功能 將n加上t,其中t是最近一次查詢操作的答案 如果還未執行過查詢操...

洛谷P1198 JSOI2008 最大數

現在請求你維護乙個數列,要求提供以下兩種操作 1 查詢操作。語法 q l 功能 查詢當前數列中末尾l個數中的最大的數,並輸出這個數的值。限制 l不超過當前數列的長度。2 插入操作。語法 a n 功能 將n加上t,其中t是最近一次查詢操作的答案 如果還未執行過查詢操作,則t 0 並將所得結果對乙個固定...