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

多重背包問題的單調隊列優化

Posted on 2011-07-05 18:00 Mato_No1 閱讀(6037) 評論(3)  編輯 收藏 引用 所屬分類: 動態規劃
多重背包問題樸素時間復雜度為O(NMS)(這里S是所有物品的數量s之和),經過二進制優化后時間復雜度為O(NMlog2S),這個復雜度已經能夠應付大多數題了,但對于某些特別卡時間的題(比如N*M=107的),仍然會TLE。這時,可以用單調隊列優化,時間復雜度降為O(NM)。

首先看一下多重背包問題的樸素轉移方程:
F[i][j] = max{F[i-1][j-x*w[i]]+x*v[i]} (0<=x<=s[i], j>=x*w[i])
如果使用滾動數組,忽略i這一維,設w0=w[i],v0=v[i],s0=s[i],得:
F[j] = max{F[j-x*w0]+x*v0} (0<=x<=s0, j>=x*w0)
看上去這和單調隊列木有神馬關系,因為決策下標(j-x*w0)不是一個整數區間,中間是有間隔的。然而可以發現,這個方程的限制條件“0<=x<=s0,j>=x*w0”,也就是x的下界是max{0, j/w0(下取整)},當j單調遞增時,這個下界也是單調遞增的。這滿足單調隊列優化的條件中的“決策下標的下界單調”……不是,還不能這樣說,因為這里的決策下標是j-x*w0,而不是x。
那么怎樣才可以把決策下標變為x?

將決策下標按照模w0的余數進行分類,可以分成w0類,分別對應模w0余0、余1……余(w0-1)的情況。這時,上面方程中的所有決策下標j-x*w0都是同一類的。進一步,設q =j/w0(下取整),r=j%w0,則j=q*w0+r,對于某個決策下標j',設k=(j'-r)/w0,即j'=k*w0+r。顯然可以發現,k的取值范圍是:k>=0且q-s0<=k<=q,也即k的下界是max{0, q-s0}——隨j的單調而單調。
然后,轉移方程可以改為(這里把r當成一個已知量了):
F[q*w0+r] = max{F[k*w0+r]+(q-k)*v0} (k>=0且q-s0<=k<=q)
即F[q*w0+r]=max{F[k*w0+r]-k*v0}+q*v0 (k>=0且q-s0<=k<=q)
設G[k]=F[k*w0+r]得:
G[q]=max{G[k]-k*v0}+q*v0 (k>=0且q-s0<=k<=q)
這個方程已經可以使用單調隊列來優化了!

這樣可以得出算法:
(1)從1到n,枚舉i,建立w[i]個空的單調隊列,每個隊列的元素都是兩個int值:(k, val),表示轉換后下標和決策值(G[k]-k*v[i]);
(2)從0到m,枚舉j,得出q、r的值,對于隊列r:
【1】刪去隊首過時(k<q-m[i])的元素;
【2】F[j]入隊(這里的F[j]指上一階段的F[j],即F[i-1][j]。因此這一步操作一定要先進行),刪去隊尾所有決策值val不大于(F[j]-q*v[i])的元素。
【3】取出隊首結點,其val值加上q*v[i]后即為本階段F[j]的值。
最后F[m]即為結果。總時間復雜度為O(NM)。

其實這個是可以推廣的,即對于如下形式的轉移方程(其中H、G和W均為常量,B[i]為決策下標的下界,隨i單調):
F[i] = opt{F[i-x*H+W]}+G (B[i]<=i-x*H+W<i,x∈N
都可以用上述的辦法進行轉化,從而進行單調隊列優化。

Feedback

# re: 多重背包問題的單調隊列優化  回復  更多評論   

2014-05-03 19:13 by gga
k的取值范圍是:k>=0且q-s0<=k<=q ;q-s0<=k是為什么

# re: 多重背包問題的單調隊列優化  回復  更多評論   

2014-05-03 22:49 by gga
”然而可以發現,這個方程的限制條件“0<=x<=s0,j>=x*w0”,也就是x的下界是max{0, j/w0(下取整)}“ 這個下界不對吧,是你所想的理想情況(j<=x*w0)吧?

# re: 多重背包問題的單調隊列優化  回復  更多評論   

2014-05-09 20:37 by zzhhbyt
@gga
我也感覺q是可購買物品數量上限,s0是物品總量,q-s0不應該是負數嗎?
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲国产精品成人久久综合一区| 久久免费视频在线观看| 欧美视频在线观看视频极品| 欧美黄色片免费观看| 欧美大片一区二区三区| 女同一区二区| 欧美日韩伦理在线免费| 国产精品久久久久久久久久久久| 国产精品嫩草99av在线| 国产一区二区欧美| 亚洲国产精品悠悠久久琪琪| 夜夜嗨av一区二区三区| 亚洲欧美在线观看| 你懂的成人av| 一区二区三区偷拍| 亚洲欧美成aⅴ人在线观看| 久久国产精品99国产| 欧美aⅴ一区二区三区视频| 欧美性一区二区| 午夜一区二区三视频在线观看 | 久久久五月天| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲风情在线资源站| 亚洲一区二区三区四区中文| 久久婷婷国产综合精品青草| 欧美日本中文| 国产一区二区三区四区| 一区二区三区免费看| 久久精品视频导航| 亚洲激情偷拍| 亚洲欧美自拍偷拍| 欧美精品国产精品| 国内精品国产成人| 亚洲自拍高清| 亚洲全黄一级网站| 久久久久久久久一区二区| 欧美日韩在线免费观看| 在线观看视频免费一区二区三区| 亚洲欧美精品suv| 亚洲第一精品福利| 久久精品30| 国产一区二区剧情av在线| 亚洲欧美精品在线| 亚洲毛片在线| 欧美大片免费| 亚洲三级性片| 欧美激情影音先锋| 老司机免费视频久久| 国产一区二区三区久久 | 一区二区三区亚洲| 校园春色国产精品| 一区二区三区产品免费精品久久75| 久久只精品国产| 国模一区二区三区| 老牛嫩草一区二区三区日本| 亚洲在线1234| 国产精品久久久久久久9999| 麻豆精品一区二区综合av| 国产香蕉97碰碰久久人人| 这里只有精品丝袜| 亚洲人成网站777色婷婷| 两个人的视频www国产精品| 韩国美女久久| 老牛嫩草一区二区三区日本| 久久久精品日韩| 在线精品亚洲一区二区| 久久久精品动漫| 欧美影院在线| 久热精品在线| 亚洲日本一区二区| 亚洲国产精品va在线看黑人| 国产一区二区福利| 久久久久在线观看| 久热精品视频在线观看| 亚洲国产成人高清精品| 亚洲电影网站| 欧美日韩一区二区在线| 亚洲欧美日韩中文视频| 久久av一区二区三区| 亚洲国产合集| 99国产一区| 国产欧美日韩综合精品二区| 久久久亚洲国产美女国产盗摄| 久久精品成人| 亚洲毛片一区| 亚洲欧美国产三级| 亚洲激情成人网| 日韩视频免费看| 国产欧美日韩精品丝袜高跟鞋| 久久精品久久综合| 欧美aa国产视频| 欧美一区=区| 欧美大片专区| 久久se精品一区二区| 嫩草国产精品入口| 久久成人综合网| 欧美激情va永久在线播放| 午夜免费在线观看精品视频| 久久久中精品2020中文| 亚洲视频在线一区| 久久视频一区| 久久国产精品一区二区| 欧美精品粉嫩高潮一区二区 | 久久偷看各类wc女厕嘘嘘偷窃| 日韩午夜av| 久久米奇亚洲| 久久大逼视频| 欧美手机在线| 欧美成人精品在线视频| 国产精品人人做人人爽| 亚洲国产精品专区久久| 国产亚洲精品bt天堂精选| 亚洲精品系列| 亚洲经典在线| 久久久91精品国产| 欧美一区永久视频免费观看| 欧美激情区在线播放| 老牛嫩草一区二区三区日本| 国产精品视频999| 99国内精品| 亚洲网站在线| 欧美日韩一区二区国产| 亚洲激情二区| 99pao成人国产永久免费视频| 久久久国产午夜精品| 欧美一区亚洲一区| 国产精品高清在线| 中日韩视频在线观看| 艳妇臀荡乳欲伦亚洲一区| 欧美成人国产一区二区| 欧美激情小视频| 亚洲国产一二三| 免费视频最近日韩| 午夜精品三级视频福利| 一区二区三区黄色| 日韩亚洲欧美在线观看| 老牛嫩草一区二区三区日本| 久久精品国产一区二区电影| 国产三级精品在线不卡| 欧美一区二区三区在| 久久精品国产亚洲一区二区| 国产一区二区你懂的| 久久精品免费播放| 久久午夜影视| 亚洲国产一区二区三区在线播 | 亚洲一区综合| 欧美一区二区三区在| 国产精品女主播| 亚洲一区二区三区精品在线观看 | 亚洲欧洲另类国产综合| 老司机午夜精品视频| 亚洲二区免费| 亚洲少妇中出一区| 国产精品香蕉在线观看| 欧美中在线观看| 欧美~级网站不卡| 亚洲精品久久久久久久久久久久久| 欧美激情四色 | 欧美顶级少妇做爰| av成人黄色| 国产伦精品一区二区三区| 久久国产精品99国产精| 欧美激情在线免费观看| 亚洲一区二区免费在线| 国产日韩精品电影| 欧美+日本+国产+在线a∨观看| 一区二区精品| 欧美大片免费观看在线观看网站推荐 | 亚洲视频1区2区| 国产一区二区成人久久免费影院| 美乳少妇欧美精品| 亚洲视频一区在线观看| 欧美成人网在线| 亚洲自拍电影| 亚洲国产精品久久人人爱蜜臀| 欧美午夜精彩| 免费观看成人www动漫视频| 亚洲小视频在线| 你懂的亚洲视频| 午夜一区二区三区在线观看| 亚洲高清不卡在线观看| 国产精品欧美日韩| 你懂的视频欧美| 欧美一区二区视频观看视频| 亚洲另类自拍| 亚洲国产精品久久久久秋霞蜜臀| 欧美亚洲一级片| 一本久久知道综合久久| 精品1区2区3区4区| 国产精品专区h在线观看| 欧美人交a欧美精品| 麻豆av福利av久久av| 午夜精品久久久久久久男人的天堂 | 亚洲欧美日韩国产另类专区| 国产综合视频| 国产精品视频专区| 欧美日韩国产精品专区| 久久综合九色综合欧美狠狠| 午夜一区二区三区在线观看| 99re热精品|