牛客練習賽25 最長區間

2021-08-27 09:01:29 字數 705 閱讀 4255

其中表示left_len right_len可以用乙個len[i] 表示 len[i]表示包括i的在i之前的最長遞增序列 用len陣列可以很方便得記錄到從x往左的left_len等於多少  然後向由可以推出right_len

cnt[i ]計算每乙個長度i的序列有多少個 其中 乙個i的子長度的序列也會記錄

更新a[x]後 只會改變x左右的值 例如 如果ax比ax-1要小了 則len[x]=1; 如果比ax-1大則len[x]=len[x-1]+1以此向後類推 因為a陣列的值就為1-100所有嚴格遞增序列最長也就100

牛客的題解:

牛客練習賽25

我好菜啊。本來是奔著t恤去的 要求 ans ni 1 j i1 ans i 1n j i 1注意到我們並不需要什麼奇蹟銀殼,只需要交換列舉主體就可以 n做了 include include define rep i,st,ed for int i st i ed i typedef long lon...

牛客練習賽25B 最長區間 線段樹,思維,模擬

給你乙個長度為 n 的序列 a 求最長的連續的嚴格上公升區間的長度。同時會進行 m 次修改,給定 x y 表示將 ax 修改為 y 每次修改之後都要求輸出答案。第一行 2 個數 n,m,表示序列長度,修改次數 接下來一行 n 個數表示 接下來 m 行,每行 2 個數 x y 描述一次修改。第一行 1...

20180824牛客練習賽25 A

q次詢問,每次給乙個x,問1到x的因數個數的和。輸入描述 第一行乙個正整數q 接下來q行,每行乙個正整數 x 輸出描述 共q行,每行乙個正整數表示答案 輸入 4 1 2 3 10 輸出 1 3 5 27 備註 1 q 10 1 x 1e9 方法1 尤拉篩列舉 絕逼炸了,無論是空間還是時間方法2 列舉...