天天看點

CF1359D Yet Another Yet Another Task(思維)

這題題意很清晰,就是求取區間和-區間最大值的最大

如果我們考慮直接求區間和再減最大值,顯然複雜度比較高

是以考慮枚舉每個位置,然後找到以他為最大值的最大區間

那麼答案就是這段區間l-r中,i-r中的字首和最大值減去l-1-i中字首和最小值,這就是這段區間的最大和,之後減去目前位置即可

這種最大最小字首和可以直接用st表維護表示區間的最大字首和。

CF1359D Yet Another Yet Another Task(思維)
CF1359D Yet Another Yet Another Task(思維)

View Code

沒有人不辛苦,隻有人不喊疼