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

a tutorial on computer science

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


#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的股票賺的最多的錢

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天買入,維護(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) 評論(7)  編輯 收藏 引用

評論

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

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

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

# 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ù)  更多評論
  

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

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

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


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   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精品国产自在现线| 国产精品美女www爽爽爽| 亚洲精品免费一区二区三区| 亚洲国产日韩欧美在线99| 久久都是精品| 久久亚洲精品一区二区| 国产在线精品成人一区二区三区| 亚洲一区激情| 先锋影音久久久| 国产精品综合网站| 午夜免费电影一区在线观看| 午夜精品在线观看| 国产女主播一区| 欧美一区视频| 老司机精品视频网站| 国内精品写真在线观看| 久久精品理论片| 男人的天堂成人在线| 亚洲国产精品黑人久久久 | 久久大香伊蕉在人线观看热2| 香蕉成人久久| 国内精品久久久久伊人av| 欧美专区在线观看| 欧美成人一品| 制服丝袜激情欧洲亚洲| 国产精品xxxxx| 午夜在线a亚洲v天堂网2018| 久久gogo国模裸体人体| 在线精品国产成人综合| 欧美成人资源网| 亚洲色图制服丝袜| 午夜在线电影亚洲一区| 国产一区二区三区日韩欧美| 久久蜜臀精品av| 亚洲激情欧美激情| 亚洲一区二区三区视频| 国产亚洲精品高潮| 欧美黄污视频| 亚洲欧美制服中文字幕| 免费观看一级特黄欧美大片| 亚洲美女91| 国产亚洲欧美中文| 欧美激情一区二区三区在线视频观看 | 亚洲一区二区在| 久久久美女艺术照精彩视频福利播放| 亚洲国产精品传媒在线观看| 欧美日韩一区二区三区高清| 久久狠狠亚洲综合| 亚洲蜜桃精久久久久久久| 久久久久www| 99精品视频一区| 国产在线精品一区二区中文| 欧美激情一区二区三区| 午夜在线电影亚洲一区| 亚洲日本aⅴ片在线观看香蕉| 欧美一级久久久| 日韩视频精品在线观看| 国产亚洲成av人在线观看导航| 欧美好吊妞视频| 久久国产精品一区二区三区| 99国产精品久久久久久久久久| 老牛国产精品一区的观看方式| 亚洲一区二区影院| 亚洲欧洲在线视频| 极品少妇一区二区三区精品视频| 欧美日韩天天操| 麻豆精品视频| 久久精品国产99国产精品| 亚洲小说欧美另类婷婷| 亚洲人体影院| 欧美国产日韩亚洲一区| 久久深夜福利免费观看| 欧美一区二区日韩一区二区| 一区二区日韩精品| 亚洲另类一区二区| 怡红院精品视频在线观看极品| 国产精品区一区二区三| 欧美日韩在线免费观看| 欧美大片专区| 麻豆久久久9性大片| 久久久免费av| 久久精品91| 久久成人在线| 欧美在线资源| 久久久久免费视频| 久久精品男女| 久久久久九九九九| 欧美影院视频| 欧美一区二区视频在线观看2020| 亚洲综合精品| 亚洲无线一线二线三线区别av| 亚洲精品社区| 99香蕉国产精品偷在线观看| 99国产一区| 一本色道久久综合亚洲精品不 | 亚洲国产第一页| 亚洲福利视频一区二区| 亚洲电影在线观看| 亚洲国产高清一区二区三区| 欧美国产一区视频在线观看| 亚洲二区在线视频| 亚洲国产精品va在线看黑人 | 亚洲欧美综合精品久久成人 | 久久国产婷婷国产香蕉| 久久大逼视频| 麻豆av一区二区三区| 欧美岛国激情| 欧美体内she精视频| 国产精品白丝黑袜喷水久久久| 国产精品区一区二区三区| 国产欧美日韩在线视频| 伊人精品成人久久综合软件| 亚洲黄页视频免费观看| 亚洲最黄网站| 欧美一区二区三区免费看| 久久久在线视频| 欧美国产一区二区三区激情无套| 欧美激情视频一区二区三区免费| 91久久在线视频| 亚洲视频在线观看一区| 欧美一区二区三区在| 免费亚洲一区| 国产精品v欧美精品v日韩精品| 国产亚洲毛片| 亚洲人成亚洲人成在线观看图片 | 亚洲性图久久| 久久国产精品免费一区| 亚洲大片一区二区三区| 亚洲精选在线| 亚洲欧美日本在线| 美女在线一区二区| 国产精品综合不卡av| 亚洲肉体裸体xxxx137| 午夜久久福利| 亚洲国内精品| 欧美影院在线| 欧美日韩一区二区在线播放| 精品51国产黑色丝袜高跟鞋| 亚洲最快最全在线视频| 久久男女视频| 在线亚洲精品| 欧美福利视频在线观看| 国产亚洲欧美色| 9l国产精品久久久久麻豆| 久久久人人人| 中文国产成人精品| 欧美成人一区二免费视频软件| 国产精品腿扒开做爽爽爽挤奶网站| 亚洲高清在线观看| 久久av一区二区三区| 99综合在线| 欧美高清自拍一区| 精品成人一区| 久久久91精品| 亚洲少妇中出一区| 欧美精品一区二区视频| 在线视频成人| 久久久www成人免费无遮挡大片 | 亚洲经典自拍| 久久久噜噜噜久噜久久| 国产欧美一区二区色老头 | 亚洲精品一品区二品区三品区| 久久av红桃一区二区小说| 国产精品乱码久久久久久| 日韩亚洲国产欧美| 欧美激情1区2区| 久久综合色8888| 精品91视频| 久久久精品欧美丰满| 午夜国产欧美理论在线播放| 欧美午夜在线| 中文国产成人精品久久一| 亚洲国产欧美日韩精品| 老司机免费视频一区二区三区| 国内精品美女在线观看| 久久久精品免费视频| 欧美制服丝袜第一页| 国产一区二区三区久久| 久久久人成影片一区二区三区 | 欧美日本一道本| 在线视频日本亚洲性| 亚洲精品偷拍| 欧美天堂亚洲电影院在线播放| 亚洲私拍自拍| 亚洲综合999| 国产一区二区三区免费在线观看|