luogu P2569 [SCOI2010]股票交易
題面傳送門
這道題暴力dp是很好想的。
就是分別從上一天,最晚可轉移的天,憑空買來轉移。
因為有狀態自然疊加所以只要轉移最晚可轉移的天就好了。
然後會發現這個是可以正反兩邊單調佇列優化的。
複雜度
O
(
T
P
)
O(TP)
O(TP)
程式碼實現:
#include<cstdio>
#include<cstring>
#define max(a,b) ((a)>(b)?(a):(b))
using namespace std;
int n,m,w,x,y,z,f[2039][2039],q[2039],head,tail;
int a[2039],b[2039],c[2039],d[2039];
int main(){
// freopen("1.in","r",stdin);
register int i,j;
scanf("%d%d%d",&n,&m,&w);
for(i=1;i<=n;i++) scanf("%d%d%d%d",&a[i],&b[i],&c[i],&d[i]);
memset(f,-0x3f,sizeof(f));
for(i=1;i<=n;i++) f[i][0]=0;
for(i=1;i<=n;i++){
for(j=1;j<=c[i];j++) f[i][j]=-a[i]*j;
for(j=0;j<=m;j++) f[i][j]=max(f[i][j],f[i-1][j]);
if(i<=w+1) continue;
head=tail=0;
for(j=0;j<=m;j++){
while(head!=tail&&q[head+1]+c[i]<j) head++;
while(head!=tail&&f[i-w-1][q[tail]]-(j-q[tail])*a[i]<=f[i-w-1][j]) tail--;
q[++tail]=j;
f[i][j]=max(f[i][j],f[i-w-1][q[head+1]]-(j-q[head+1])*a[i]);
}
head=tail=0;
for(j=m;j>=0;j--){
while(head!=tail&&q[head+1]>j+d[i]) head++;
while(head!=tail&&f[i-w-1][q[tail]]+(q[tail]-j)*b[i]<=f[i-w-1][j]) tail--;
q[++tail]=j;
f[i][j]=max(f[i][j],f[i-w-1][q[head+1]]+(q[head+1]-j)*b[i]);
}
}
printf("%d\n",f[n][0]);
}
相關文章
- P2569 [SCOI2010] 股票交易
- 洛谷 P2569 [SCOI2010] 股票交易 題解
- NC20279 [SCOI2010]序列操作
- NC20566 [SCOI2010]遊戲遊戲
- Luogu P10812
- luogu2516題解
- luogu_P3373 Solution
- 【Luogu1048】採藥
- 【luogu1816】忠誠
- bzoj1858: [Scoi2010]序列操作(線段樹)
- [PEP] Luogu 二週年記
- 如何搭建屬於自己的股票交易系統?
- Luogu8990 做題記錄
- luogu P6835 概率DP 期望
- $Luogu P2029$ 跳舞 題解
- 卡特蘭數 洛谷P1641 [SCOI2010]生成字串字串
- 前端效能:股票交易APP頻繁更新怎麼破前端APP
- luogu-P3853 路標設定
- [luogu P4211] [LNOI2014]LCA
- luogu P5867 【[SEERC2018]Fishermen】
- [luogu3709][大爺的字串題]字串
- 【Luogu1616】瘋狂的採藥
- 【luogu3373】模板 線段樹 2
- 【luogu3372】線段樹 1 模板
- Luogu P5563 [Celeste-B] No More Running
- Luogu P6864 [RC-03] 記憶
- [luogu1486][鬱悶的出納員]
- 【luogu3368】模板 樹狀陣列 2陣列
- Solution - Luogu P10918 小分圖最大匹配
- [分塊] [Luogu AT_joisc2014_c] 歷史研究
- luogu P4198 樓房重建——線段樹
- Luogu P5005 中國象棋 - 擺上馬 / Luogu P8756 國際象棋 題解 [ 藍 ] [ 狀壓 dp ] [ 位運算 ]
- 記一次 .NET某股票交易軟體 靈異崩潰分析
- Luogu P10869 LCMs 題解 [ 黃 ] [ lcm ] [ 最短路 ]
- 紐約大學:年輕投資者對線上股票交易“上癮”
- 韓國金融監管機構希望將區塊鏈用於股票交易區塊鏈
- Solution - Luogu P9575 「TAOI-2」喵了個喵 Ⅳ
- luogu P1896 [SCOI2005] 互不侵犯 題解