青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

a tutorial on computer science

  C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  21 隨筆 :: 0 文章 :: 17 評(píng)論 :: 0 Trackbacks
    嚴(yán)重鄙視這一題,弄了N復(fù)雜的一個(gè)題意。。。做了好多天都沒(méi)想法,今天終于看著題解把它A掉了。。
    其實(shí)單調(diào)隊(duì)列如果再?zèng)]有明顯的 max(i,i+K) 的情況下。。很難想得到。這個(gè)題目就是。
    題意是說(shuō)一個(gè)人跟政府關(guān)系很好。知道了下面T天每天的股票價(jià)格。但是XX告訴他,兒子啊,我告訴你啊,你買(mǎi)股票要這么買(mǎi),要不會(huì)被抓的。你手上的股票數(shù)最多不能超過(guò)maxP,而且某一天買(mǎi)賣(mài)之后,下次買(mǎi)賣(mài)的時(shí)間必須延后W天,你懂的。好了,下面告訴你T天的價(jià)格,你自己賺錢(qián)去吧。
    這題的樸素的DP方程是這樣的: res[i][j] = res[i-W-1][k]  + 買(mǎi)入或賣(mài)出的代價(jià)     ( j-ASi<=k <=j+BSi )
    有人會(huì)問(wèn)為什么只枚舉了i-W-1天呢?前面的日子呢?額。。。前面的日子已經(jīng)歸到i-W-1天啦。
    好了,這破題。狀態(tài)復(fù)雜度: T*maxP,決策復(fù)雜度maxP。無(wú)懸念的超時(shí)了。
   別人說(shuō)用單調(diào)隊(duì)列優(yōu)化就單調(diào)隊(duì)列優(yōu)化吧。
   我們可以這樣想:假如i-w-1天那家伙持有的股票根據(jù)那天股票的價(jià)格換成了錢(qián),就是都虛擬換成r[i-w-1][0],這樣,我們可以知道,我們不會(huì)選擇錢(qián)少的決策的,因?yàn)槲覀儸F(xiàn)在得j是固定的,當(dāng)換算后的錢(qián)多的時(shí)候,無(wú)論怎樣決策都比錢(qián)少的好。。,好了,著就變成了第二句話(huà)那樣的模型了,直接換算出來(lái),弄個(gè)丑陋的單調(diào)隊(duì)列出來(lái),然后唧唧歪哇一大堆。
   下面是代碼,寫(xiě)的比較長(zhǎng),比較亂。糾結(jié)。。。。糾結(jié)。。。。
//單調(diào)隊(duì)列用法:求一段序列里的最值。   加上決策有序    
//這個(gè)題 : 決策的時(shí)候,把持有的股票數(shù)轉(zhuǎn)化出來(lái),可知當(dāng)決策為 max(res[i-W-1][j-ASi],res[i-W-1][j+BSi]+k*BAi,BPi)時(shí), 


#include 
<stdio.h>
#include 
<string.h>
#define inf 900000

typedef 
struct
{
  
int APi,BPi,ASi,BSi;
}
node;

typedef 
struct
{
  
int pos;
  
int res;
}
qe;
int qhead,qtail;
qe queue[
410010];
node data[
2010];

int res[2010][2010];//第i天擁有j的股票賺的最多的錢(qián)

int T,W,maxP;

int max(int i,int j)
{
  
if(i > j) return i;
  
return j;
}


int main()
{
   
int testcase,i,j,k;
   scanf(
"%d",&testcase);
   
while(testcase--)
   
{
     
int ans = 0;
     scanf(
"%d%d%d",&T,&maxP,&W);
     
for(i=1;i<=T;i++)
     
{
       scanf(
"%d%d%d%d",&data[i].APi,&data[i].BPi,&data[i].ASi,&data[i].BSi);    
     }


     
for(i=1;i<=T;i++)
      
for(j=0;j<=maxP;j++)
        res[i][j] 
= -1000000;

     
for(i=1;i<=W+1;i++)
      
for(j=0;j<=data[i].ASi;j++)
        res[i][j] 
= -j*data[i].APi; 

     
for(i=2;i<=T;i++)
     
{
           
for(j=0;j<=maxP;j++)
             res[i][j] 
= max(res[i][j],res[i-1][j]); 
          
           
//由i-w-1天買(mǎi)入,維護(hù)在i-w-1天總資產(chǎn)遞增序列 
           qhead = qtail = 0;
           
if(i-W-1<1)
             
continue;
           
for(j=0;j<=maxP;j++)
           
{
              qe tmp;
              tmp.pos 
= j,tmp.res = res[i-W-1][j] + j*data[i].APi;
              queue[qhead
++= tmp;
              
while(qhead > qtail + 1 && queue[qhead-1].res > queue[qhead-2].res)
              
{
                qhead
--;
                queue[qhead
-1= tmp;
              }

              
while(qhead > qtail + 1 && data[i].ASi + queue[qtail].pos < j )
                qtail
++;
              res[i][j] 
= max(res[i][j],res[i-W-1][queue[qtail].pos] - data[i].APi * (j - queue[qtail].pos));
           }

           
           qhead 
= qtail = 0;
           
           
for(j=maxP;j>=0;j--)
           
{
             qe tmp;
             tmp.pos 
= j,tmp.res = res[i-W-1][j] + j*data[i].BPi;
             queue[qhead
++= tmp; 
             
while(qhead > qtail + 1 && tmp.res > queue[qhead-2].res)
              
{
                qhead
--;
              }

             queue[qhead
-1= tmp;
             
              
while(qhead > qtail + 1 && queue[qtail].pos - data[i].BSi > j)
                qtail
++;
              res[i][j] 
= max(res[i][j],res[i-W-1][queue[qtail].pos] + data[i].BPi * (queue[qtail].pos - j));
           }
                        
     }
 
    
for(i=0;i<=maxP;i++)
      
if(ans < res[T][i])
        ans 
= res[T][i];
    printf(
"%d\n",ans);   
   }

   
return 0;
}

posted on 2012-03-16 16:16 bigrabbit 閱讀(1188) 評(píng)論(7)  編輯 收藏 引用

評(píng)論

# re: 單調(diào)隊(duì)列優(yōu)化dp]Problem - 3401 Trade 2012-03-16 16:52 我執(zhí)分別心
呵呵,玩ACM要有被虐的勇氣  回復(fù)  更多評(píng)論
  

# re: 單調(diào)隊(duì)列優(yōu)化dp]Problem - 3401 Trade 2012-03-16 16:57 bigrabbit
@我執(zhí)分別心
額。。同行?歡迎交流。  回復(fù)  更多評(píng)論
  

# re: 單調(diào)隊(duì)列優(yōu)化dp]Problem - 3401 Trade 2012-03-16 17:09 crystalBlade
沒(méi)看到題目,我out了?  回復(fù)  更多評(píng)論
  

# re: 單調(diào)隊(duì)列優(yōu)化dp]Problem - 3401 Trade 2012-03-16 17:11 bigrabbit
@crystalBlade
http://acm.hdu.edu.cn/showproblem.php?pid=3401
這是題目。額,你的博客就一篇文章額。。  回復(fù)  更多評(píng)論
  

# re: 單調(diào)隊(duì)列優(yōu)化dp]Problem - 3401 Trade 2012-03-16 18:45 遠(yuǎn)行
一直被虐中,求一個(gè)月后人品爆發(fā)  回復(fù)  更多評(píng)論
  

# re: 單調(diào)隊(duì)列優(yōu)化dp]Problem - 3401 Trade 2012-03-17 09:28 tb
玩ACM要有被虐的勇氣 呵呵   回復(fù)  更多評(píng)論
  

# re: 單調(diào)隊(duì)列優(yōu)化dp]Problem - 3401 Trade 2012-03-17 10:42 bigrabbit
@tb
你這么卡bug么。。。你的首頁(yè)變淘寶了。。。  回復(fù)  更多評(píng)論
  


只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲第一福利社区| 亚洲欧美日韩国产综合在线 | 亚洲欧美日韩中文视频| 黑人一区二区| 国产精品久久一级| 欧美国产综合一区二区| 久久久99精品免费观看不卡| 99视频超级精品| 免费视频一区| 欧美在线视频a| 亚洲桃色在线一区| 亚洲精品国产品国语在线app| 国产午夜精品久久久久久免费视| 欧美肉体xxxx裸体137大胆| 麻豆成人91精品二区三区| 久久不射2019中文字幕| 亚洲性感美女99在线| 亚洲乱码国产乱码精品精天堂| 欧美福利视频一区| 久久深夜福利免费观看| 午夜亚洲伦理| 亚洲欧美日韩第一区| 亚洲视频 欧洲视频| 亚洲精品一区二区三区樱花| 伊人久久大香线蕉av超碰演员| 国产欧美一区二区三区视频| 国产精品视频福利| 国产精品地址| 国产精品久久久久久久久久免费 | 亚洲一级网站| 亚洲视频一区二区| 一区二区三区 在线观看视| 亚洲欧洲一二三| 亚洲精品国产精品国自产观看浪潮 | 免费成人毛片| 免费亚洲一区| 欧美gay视频激情| 欧美成人资源| 亚洲国产精品久久久| 欧美高清不卡| 亚洲欧洲日本专区| 欧美丰满少妇xxxbbb| 亚洲第一精品夜夜躁人人爽| 欧美激情精品| 日韩午夜中文字幕| 日韩午夜高潮| 正在播放欧美一区| 亚洲免费中文| 欧美中文在线字幕| 久久一二三四| 欧美激情一区二区久久久| 欧美黑人国产人伦爽爽爽| 欧美成人自拍| 国产精品porn| 好看不卡的中文字幕| 亚洲国产精品福利| 夜夜嗨av一区二区三区四区| 亚洲视屏一区| 久久久久成人精品| 欧美高清免费| 中文国产亚洲喷潮| 久久激情视频| 欧美经典一区二区三区| 国产精品美女一区二区| 韩日欧美一区| 亚洲麻豆国产自偷在线| 亚洲尤物在线视频观看| 久久久国产精品一区二区三区| 欧美77777| 99视频+国产日韩欧美| 久久国产精品久久久久久| 免费中文字幕日韩欧美| 欧美性大战久久久久久久蜜臀| 国产一区二区福利| 一区二区三区不卡视频在线观看| 午夜亚洲福利| 亚洲黄色在线看| 午夜精品av| 欧美激情久久久| 国产女精品视频网站免费| 亚洲国产色一区| 亚洲欧洲99久久| 欧美激情精品久久久六区热门| 这里只有视频精品| 另类国产ts人妖高潮视频| 国产精品日韩欧美一区| 在线成人av| 午夜亚洲激情| 亚洲精品一区二区三区婷婷月| 欧美一区二区三区日韩视频| 欧美日韩国产小视频| 国内外成人免费激情在线视频| 99re国产精品| 免费看精品久久片| 亚洲欧美一区二区三区在线| 欧美久色视频| 影音先锋中文字幕一区二区| 亚洲欧美日韩在线| 亚洲国产天堂久久综合网| 欧美综合激情网| 国产精品video| 亚洲老司机av| 欧美aⅴ99久久黑人专区| 午夜精品视频在线| 欧美三级欧美一级| 亚洲精品老司机| 久久综合影视| 午夜精品婷婷| 国产精品久久久一区二区三区| 亚洲精品国产欧美| 欧美大片第1页| 久久激情视频免费观看| 国产日韩在线视频| 日韩午夜精品视频| 亚洲第一中文字幕在线观看| 久久国产免费看| 国产精品视频99| 午夜精彩视频在线观看不卡| 99精品热6080yy久久| 欧美日韩精品一区二区| 亚洲精品网站在线播放gif| 欧美国产一区二区三区激情无套| 欧美一区二区视频97| 国产亚洲精品bt天堂精选| 香港成人在线视频| 亚洲欧美在线网| 国产精品第一页第二页第三页| 日韩视频精品在线| 亚洲激情网站免费观看| 欧美激情片在线观看| 91久久国产自产拍夜夜嗨| 欧美成人自拍| 欧美—级高清免费播放| 日韩一区二区免费高清| 亚洲欧洲一区| 欧美日韩一区二区三区视频| 亚洲深夜激情| 亚洲伊人久久综合| 国产精品日本| 久久久久久久97| 久久久久.com| 亚洲国产成人在线| 亚洲人成网站影音先锋播放| 欧美日韩国产精品专区| 亚洲资源av| 亚洲男人天堂2024| 国产一区在线播放| 葵司免费一区二区三区四区五区| 久久天天躁夜夜躁狠狠躁2022| 1000部国产精品成人观看| 亚洲国产91精品在线观看| 欧美日韩在线视频一区| 久久成人亚洲| 久久精品中文字幕一区| 亚洲欧洲一区二区三区| 99国产精品久久久| 国产欧美在线| 欧美成年人网站| 欧美日韩ab| 久久成人一区| 欧美大片va欧美在线播放| 一本色道久久综合亚洲精品小说| 亚洲天堂av图片| 极品尤物av久久免费看| 91久久在线| 国产麻豆综合| 亚洲国产精品电影| 国产精品乱码妇女bbbb| 另类av导航| 欧美日韩一区二区在线视频| 久久国产视频网站| 欧美成人国产一区二区| 亚洲一区自拍| 久久综合中文色婷婷| 亚洲免费视频成人| 久久久久久9| 亚洲欧美国产77777| 久久在精品线影院精品国产| 亚洲天堂av高清| 久久综合99re88久久爱| 午夜精品免费视频| 欧美黄色成人网| 久久人体大胆视频| 国产精品高潮呻吟久久av黑人| 久久综合狠狠| 欧美性久久久| 亚洲精美视频| 激情欧美一区二区| 亚洲香蕉成视频在线观看 | 亚洲欧美日韩一区在线| 欧美 亚欧 日韩视频在线| 午夜综合激情| 欧美人体xx| 欧美成人精品激情在线观看| 国产精品推荐精品| 亚洲精品黄色| 亚洲欧洲一区二区三区久久| 久久成人18免费网站| 欧美亚洲一区在线| 欧美日韩一区成人|