[洛谷P2422]良好的感覺[單調隊列]
開始寫了個隊頭隊尾都pop的假做法...還搞到了70pts 後來拍了拍發現自己傻了
int n, a[MAXN], l[MAXN], r[MAXN], sta[MAXN], top;//l[i], r[i]是a[i]作為最小值的最左和最右端點 ll pre[MAXN]; int main() { ll ans = 0; in, n; lop1(i, n) in, a[i]; a[++n] = 0; lop1(i, n) pre[i] = pre[i - 1] + a[i]; lop1(i, n) l[i] = i; lop1(i, n) { while (top && a[sta[top]] >= a[i]) r[sta[top]] = i - 1, chmin(l[i], l[sta[top--]]); sta[++top] = i; } lop1(i, n) chmax(ans, 1ll * (pre[r[i]] - pre[l[i]-1]) * a[i]); out, ans, '\n'; return 0; }
[洛谷P2422]良好的感覺[單調隊列]
相關推薦
[洛谷P2422]良好的感覺[單調隊列]
pts -- max chm code ... 隊列 最小 開始 開始寫了個隊頭隊尾都pop的假做法...還搞到了70pts 後來拍了拍發現自己傻了 int n, a[MAXN], l[MAXN], r[MAXN], sta[MAXN], top;//l[i], r[i]
[洛谷P2422]良好的感覺[單調佇列]
開始寫了個隊頭隊尾都pop的假做法...還搞到了70pts 後來拍了拍發現自己傻了 int n, a[MAXN], l[MAXN], r[MAXN], sta[MAXN], top;//l[i], r[i]是a[i]作為最小值的最左和最右端點 ll pre[MAXN]; int main() { ll
洛谷 P2422 良好的感覺
滿足 iostream 算法分析 name con https etc http 尋找 傳送門:洛谷 P2422 良好的感覺 算法分析: 本題可考慮貪心做法,每次枚舉某一區間最小值,那麽當最小值固定時,一定是滿足最小值的最長區間最優,即從當前位置向兩邊尋找,一直到不是最小為
洛谷 P2827 蚯蚓 【優先隊列】
個數 badge 空格 之間 new lan fine floor 結果 洛谷 P2827 蚯蚓 題目描述(題目還是到鏈接裏去看吧(點標題),這裏復制的時候有點問題) 本題中,我們將用符號 \lfloor c \rfloor?c? 表示對 cc 向下取整,例如: \lflo
洛谷 P2216 [HAOI2007]理想的正方形 || 二維RMQ的單調隊列
pmi 最小值 typedef 關系 pan 算法 一行 ++ min 題目 這個題的算法核心就是求出以i,j為左上角,邊長為n的矩陣中最小值和最大值。最小和最大值的求法類似。 單調隊列做法: 以最小值為例: q1[i][j]表示第i行上,從j列開始的n列的最小值。
洛谷P3195 [HNOI2008]玩具裝箱TOY(單調隊列優化DP)
span reg inf line 希望 決定 ifd 詳細 pac 題目描述 P教授要去看奧運,但是他舍不下他的玩具,於是他決定把所有的玩具運到北京。他使用自己的壓縮器進行壓縮,其可以將任意物品變成一堆,再放到一種特殊的一維容器中。P教授有編號為1...N的N件玩具,第
洛谷.2219.[HAOI2007]修築綠化帶(單調隊列)
註意 右下角 etc href 端點 span http body stdin 題目鏈接 洛谷 COGS.24 對於大的矩陣可以枚舉;對於小的矩陣,需要在滿足條件的區域求一個矩形和的最小值 預處理S2[i][j]表示以(i,j)為右下角的C\(*\)D的矩陣和, 然後對於求
洛谷 P1886 滑動窗口 單調隊列
clas 一個 head sam -- c++ 解釋 href 最大值 題目描述 現在有一堆數字共N個數字(N<=10^6),以及一個大小為k的窗口。現在這個從左邊開始向右滑動,每次滑動一個單位,求出每次滑動後窗口中的最大值和最小值。 例如: The array is
洛谷P2900 [USACO08MAR]土地征用Land Acquisition(動態規劃,斜率優化,決策單調性,線性規劃,單調隊列)
tps include 寫法 lan clas com mat 成了 dong 用兩種不一樣的思路立體地理解斜率優化,你值得擁有。 題意分析 既然所有的土地都要買,那麽我們可以考慮到,如果一塊土地的寬和高(其實是蒟蒻把長方形立在了平面上)都比另一塊要小,那麽肯定是直接並購,
洛谷P2254 [NOI2005]瑰麗華爾茲(單調隊列)
include -- pan har pri 轉移 moto scanf 距離 傳送門 題解 大概就是設$dp[i][x][y]$表示在第$i$個時間段,在$(x,y)$時的最大滑動距離 然後轉移是$dp[i][x][y]=max(dp[i-1][x][y],d
[單調隊列] 洛谷 P2564 生日禮物
題目 bottom 100% thml 代碼 sort 輸入輸出 現在 其中 題目描述 小西有一條很長的彩帶,彩帶上掛著各式各樣的彩珠。已知彩珠有N個,分為K種。簡單的說,可以將彩帶考慮為x軸,每一個彩珠有一個對應的坐標(即位置)。某些坐標上可以沒有彩珠,但多個彩珠也可以
洛谷 P3957 跳房子 —— 二分答案+單調隊列優化DP
bool targe d+ char new tar nbsp 二分 mem 題目:https://www.luogu.org/problemnew/show/P3957 先二分一個 g,然後判斷; 由於轉移的範圍是一個區間,也就是滑動窗口,所以單調隊列優化; 可以先令隊尾
洛谷P2564 生日禮物【單調隊列】
-m tail mat def tdi ret efi msu eset 題目背景 四川2009NOI省選 題目描述 小西有一條很長的彩帶,彩帶上掛著各式各樣的彩珠。已知彩珠有N個,分為K種。簡單的說,可以將彩帶考慮為x軸,每一個彩珠有一個對應的坐標(即位置)。某些坐標上可
洛谷P2569 股票交易【dp】【單調隊列】
還需 可能 之間 pri 數字 間隔 col node .com 題目描述 最近 \text{lxhgww}lxhgww 又迷上了投資股票,通過一段時間的觀察和學習,他總結出了股票行情的一些規律。 通過一段時間的觀察,\text{lxhgww}lxhgww 預測到了未來 T
【洛谷 P1419】 尋找段落(二分答案,單調隊列)
https class 等於 char inf math getch ons print 題目鏈接 開始還以為是尺取。發現行不通。 一看標簽二分答案,恍然大悟。 二分一個\(mid\)(實數),把數列裏每個數減去\(mid\),然後求前綴和,在用單調隊列維護\(sum[i-
洛谷P2216: [HAOI2007]理想的正方形 單調隊列優化DP
define print sin gre ostream mod ++i priority ear 洛谷P2216 )逼著自己寫DP 題意: 給定一個帶有數字的矩陣,找出一個大小為n*n的矩陣,這個矩陣中最大值減最小值最小。 思路: 先處理出每一行每個格子
洛谷試煉場 4-8單調隊列
分區 truct turn 隊列 vector sco erp nod tao layout: post title: 洛谷試煉場 4-8單調隊列 author: "luowentaoaa" catalog: true mathjax: true ta
洛谷 P1440 求m區間內的最小值(單調隊列)
ac代碼 ati space value .org 意思 pro htm src 題目鏈接 https://www.luogu.org/problemnew/show/P1440 顯然是一道單調隊列題目…… 解題思路 對於單調隊列
[luoguP2216] [HAOI2007]理想的正方形(二維單調隊列)
++ pla https hide 正方形 closed log 傳送門 name 傳送門 1.先弄個單調隊列求出每一行的區間為n的最大值最小值。 2.然後再搞個單調隊列求1所求出的結果的區間為n的最大值最小值 3.最後掃一遍就行 懶得畫圖,自己體會吧。
[Vijos1617] 超級教主(DP + 單調隊列)
amp log pan view alt open 說明 tar 超時 傳送門 設 f[i] 表示吃完 f[i] 及其以下的能量球後所剩下的能量。 所以 f[i] = max(f[i], f[j] + (sum[i] - sum[j]) - i * 100) (