運氣糖果
description
今天zjzjzj
學長想轉運,所以某某為他帶來nn
n顆運氣糖果。
每顆運氣糖果都有不同的幸運值。
既然zjzjzj
學長想轉運,自然希望自己的運氣越來越好了,但zjzjzj
學長最多又只能吃mm
m顆(m≤nm \leq nm≤
n)糖果。
而且吃東西自然就不想思考了,於是zjzjzj
學長把這個任務扔給了學acmacmac
m的你,請你幫他從這nn
n顆糖果中找出連續的kk
k顆糖果(k≤mk \leq mk≤
m),使得zjzjzj
學長可以得到最大的幸運值。
input
輸入格式
第一行包含兩個整數nn
n和mm
m,表示共有nn
n顆糖果,zjzjzj
最多只能吃mmm顆。
第二行包含空格隔開的nn
n個整數,第ii
i個整數pipipi
代表第i顆糖果的幸運值。
output
輸出格式
輸出包含乙個整數,為zj能夠得到的最大幸運值。
資料範圍
1≤m≤n≤10001 \leq m \leq n \leq 10001≤
m≤n≤
1000
,−1000≤pi≤1000−1000 \leq pi \leq 1000−1
000≤
pi≤1
000sample input 1
5 21 2 3 4 5
sample output 1
9
source
yzj
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define db double
#define ll long long
const
int len =
1e6+5;
ll sum[len]
;int
main()
#include
#include
#include
#include
using namespace std;
const
int len =
1e6+10;
int ar[len]
;int q[len]
;int
work
(int n,
int m)
return res;
}int
main()
單調佇列 維護
easy的學生的 資料結構 考試掛掉了,他求著easy再給他一次機會,easy出了這麼一道題,如果他的學生做出來就給這個學生一次重新考試的機會,題目是這樣的 維護乙個名為佇列的資料結構,支援以下四種操作 1.enqueue x 將值為x的元素放入佇列的尾部 2.dequeue 輸出當前佇列首部的元素...
動態規劃 單調佇列維護 烽火傳遞
用q i 表示到i前面符合條件的最小代價為多少 要取到i 單調佇列維護區間中q i 的最小值 l,r表示單調佇列的隊首與隊尾 從1到n迴圈,若q qj r q i 隊尾比當前大 彈出隊尾將當前放入 若qj l 最後更新一下q i q l a i 符合要求區間中最小值加當前值為當前最小值 答案在n n...
查稅 斜率優化 單調佇列維護凸包 分塊 )
id3167 有n個辦公室,m個操作,依次讀入 type 如果type為1 接著讀入 t k z s 表示乙個公司於t時刻進駐k辦公室,每天盈利為z,其一開始有s元。若k位置本有別的公司,別的公司會被覆蓋。如果type為2 接著讀入t b 表示於t時刻,你要找出區間 a,b 內,最有錢的公司的錢數。...