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

posts - 43,  comments - 9,  trackbacks - 0
http://acm.pku.edu.cn/JudgeOnline/problem?id=1276
題目大意是:
給定N種面值分別為d[k]的鈔票,數(shù)量分別為n[k]張.再給一個(gè)整數(shù)cash.
求,用這些鈔票能表示出的不大于cash的最大值是多少.
數(shù)據(jù)范圍N<=1000, n[k]<=1000, cash<=100000

最簡(jiǎn)單的DP思路是大背包.把每一張鈔票看成一件物品,把cash看成背包容量.
這樣的復(fù)雜度是O(sigma(n[k])*cash),上限是10^11,顯然難以應(yīng)付1000ms的時(shí)限.

此處便需利用一個(gè)整數(shù)的性質(zhì)來(lái)壓縮鈔票數(shù):
易知,1,2,4,...,2^(k-1)這些數(shù)的線性組合,可以表示出任意小于2^k的正整數(shù).
所以如果n[i]=2^k-1,那么實(shí)際上鈔票k,就可以轉(zhuǎn)化為分別用系數(shù)(1,2,4,...,2^k-1)去乘d[k]而得到的鈔票各一張.
如果n[i]!=2^k-1,只需取系數(shù)1,2,4,..,2^(k-1),n[i]-(2^k-1),其中k是使2^k-1<=n[i]的最大整數(shù).

代碼如下:
 1 #include <iostream>
 2 #include <algorithm>
 3 using namespace std;
 4 int dp[100010],mark;
 5 int sn,cash;
 6 struct BILL{
 7     int n,d;
 8 }b[1010];
 9 int ans;
10 
11 void go_dp(){
12     int i,k,upb,r,s;
13     dp[0]=mark;
14     ans=0;
15     for(k=0; k<sn; k++){
16         r=1//系數(shù):2的冪次
17         while(b[k].n>0){
18             if((r<<1)-1>b[k].n){
19                 r=b[k].n-(r-1);
20                 b[k].n=0;
21             }
22             s=r*b[k].d; //新鈔票的面值
23             upb=min(ans+s,cash);
24             for(i=upb; i>=s; i--){
25                 if(dp[i-s]==mark){
26                     dp[i]=mark;
27                     if(ans<i) ans=i;
28                 }
29             }
30             r<<=1;
31             if(ans==cash) return;
32         }
33     }
34 }
35 
36 int main(){
37     int i,j,k;
38     mark=0;
39     while(scanf("%d%d",&cash,&sn)!=EOF){
40         ans=0; mark++;
41         for(i=0;i<sn;i++){
42             scanf("%d%d",&b[i].n,&b[i].d);
43             ans+=b[i].n*b[i].d;
44         }
45         if(ans>cash)
46             go_dp();
47         
48         printf("%d\n",ans);
49     }
50     return 0;
51 }
52 

另,在網(wǎng)上搜得另一種思路,開(kāi)bool數(shù)組記錄每個(gè)總額是否能達(dá)到,開(kāi)個(gè)2維數(shù)組記錄達(dá)到相應(yīng)總額每種鈔票使用數(shù)
個(gè)人以為,這種方法不能保證總得到最優(yōu)解.考察如下的例子:
cash=3*4*5=60
鈔票(面值*張數(shù)):3*19,4*14,5*11
假設(shè)55的方案恰好是5*11,56的方案恰好是4*14,57的方案恰好是3*19,那么在考慮60時(shí)就找不到解了.實(shí)際上60是可以達(dá)到的.





posted on 2009-04-11 13:21 wolf5x 閱讀(428) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): acm_icpc
<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

"Do not spend all your time on training or studying - this way you will probably become very exhausted and unwilling to compete more. Whatever you do - have fun. Once you find programming is no fun anymore – drop it. Play soccer, find a girlfriend, study something not related to programming, just live a life - programming contests are only programming contests, and nothing more. Don't let them become your life - for your life is much more interesting and colorful." -- Petr

留言簿(3)

隨筆分類(lèi)(59)

隨筆檔案(43)

cows

搜索

  •  

最新評(píng)論

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一区二区三区啪啪| 香蕉尹人综合在线观看| 久久精品视频在线| 久久亚洲精品欧美| 一本色道久久加勒比88综合| 亚洲天堂成人在线视频| 激情久久中文字幕| 99国产精品一区| 伊人久久大香线蕉av超碰演员| 亚洲日本电影在线| 国产嫩草影院久久久久| 亚洲成在人线av| 国产精品美腿一区在线看| 蜜桃av综合| 国产精品美女在线观看| 欧美高清你懂得| 国产伦精品一区二区三区视频孕妇| 免费在线观看精品| 国产精品视频九色porn| 亚洲激情一区| 原创国产精品91| 亚洲免费视频观看| 亚洲视频axxx| 欧美精品二区| 欧美国产精品日韩| 国产日韩欧美二区| 99这里有精品| 一本色道久久综合亚洲精品婷婷| 久久亚洲私人国产精品va| 欧美诱惑福利视频| 国产精品二区二区三区| 亚洲伦理自拍| 亚洲精品一区在线观看香蕉| 久久综合九色综合欧美狠狠| 久久精品人人爽| 国产免费亚洲高清| 亚洲一区二区三区国产| 一区二区久久久久| 嫩模写真一区二区三区三州| 久久综合九色九九| 国产一区二区三区网站| 亚洲免费在线精品一区| 午夜视频精品| 国产精品一区免费观看| 亚洲欧美大片| 欧美在线免费一级片| 国产精品一区二区你懂得| 一区二区三区四区五区精品视频| 亚洲精品一二三区| 欧美大片在线影院| 亚洲黄色一区二区三区| 日韩亚洲一区二区| 欧美日韩国产美女| 99精品欧美一区二区三区综合在线 | 欧美体内she精视频在线观看| 亚洲欧洲精品一区二区| 9人人澡人人爽人人精品| 欧美精品三级在线观看| 亚洲激情在线观看视频免费| 日韩视频在线一区| 欧美日韩精品一区二区三区| 在线亚洲高清视频| 欧美在线不卡| 黑人巨大精品欧美黑白配亚洲 | 国产精品久久久久三级| 亚洲在线黄色| 欧美综合国产精品久久丁香| 国产日韩欧美一区在线 | 91久久精品一区| 欧美成人午夜激情| 日韩视频精品在线| 午夜一区在线| 精品av久久707| 欧美激情影院| 亚洲欧美综合一区| 欧美国产精品久久| 亚洲一区在线免费| 国产一区二区三区av电影| 麻豆精品视频在线观看| 亚洲免费观看视频| 久久精品欧美日韩| 日韩午夜电影| 国产亚洲精品bt天堂精选| 可以免费看不卡的av网站| 99热在线精品观看| 麻豆精品视频在线观看视频| 这里只有精品在线播放| 黑人巨大精品欧美黑白配亚洲| 欧美精品色一区二区三区| 亚洲摸下面视频| 亚洲高清自拍| 久久高清国产| 一本大道久久a久久综合婷婷| 国产精品午夜电影| 欧美成人在线网站| 午夜亚洲性色福利视频| 欧美国产另类| 香蕉久久夜色精品国产使用方法| 亚洲国产精品女人久久久| 国产精品久久久久9999高清| 浪潮色综合久久天堂| 亚洲午夜精品网| 亚洲高清视频一区| 久久视频在线免费观看| 亚洲一区二区三区色| 在线日韩av片| 国产农村妇女毛片精品久久麻豆| 欧美精品福利视频| 久久亚洲春色中文字幕久久久| 亚洲视频国产视频| 亚洲激情在线观看| 蜜桃视频一区| 久久久久久久久岛国免费| 亚洲午夜激情| 日韩视频中文字幕| 亚洲激情六月丁香| 激情久久五月| 国产真实久久| 国产三级精品在线不卡| 欧美亚男人的天堂| 欧美日韩国产三级| 欧美成人伊人久久综合网| 久久久夜色精品亚洲| 午夜在线不卡| 亚洲欧美一区二区精品久久久| av成人免费在线观看| 亚洲精品一区二区在线| 亚洲国产成人精品女人久久久| 久久综合网络一区二区| 久久久精品动漫| 久久精视频免费在线久久完整在线看| 午夜激情亚洲| 性欧美办公室18xxxxhd| 亚洲欧美日韩一区二区| 亚洲免费在线观看| 亚洲一区在线观看免费观看电影高清| 一级成人国产| 国产精品手机在线| 国产乱码精品一区二区三区不卡| 国产精品伦一区| 国产精品视频内| 国产啪精品视频| 国产视频亚洲精品| 国产一区激情| 在线高清一区| 亚洲欧洲一区二区天堂久久| 亚洲欧洲一区二区三区| 亚洲另类在线视频| 夜夜嗨av一区二区三区中文字幕| 99精品视频一区二区三区| 99精品久久| 亚洲一区二区三区中文字幕在线 | 久久欧美中文字幕| 久久久精品999| 久久综合福利| 欧美国产综合| 欧美日韩一区二区在线| 国产精品美女久久久浪潮软件 | 一本色道久久综合亚洲精品按摩| 一本一道久久综合狠狠老精东影业| 正在播放亚洲一区| 午夜精品久久久久久久99樱桃 | 亚洲欧美日本视频在线观看| 翔田千里一区二区| 久久视频在线视频| 亚洲成人在线网站| 一本色道久久综合亚洲精品不卡| 亚洲欧美另类久久久精品2019| 久久国产精品免费一区| 欧美成人综合| 国产麻豆成人精品| 亚洲大黄网站| 亚洲综合二区| 免费精品视频| 在线亚洲免费| 久久夜色精品一区| 欧美日韩视频在线一区二区| 国产日韩av在线播放| 亚洲人成欧美中文字幕| 西西裸体人体做爰大胆久久久| 鲁大师影院一区二区三区| 亚洲久久视频| 久久久久9999亚洲精品| 欧美视频精品在线| 在线观看视频亚洲| 这里只有精品丝袜| 久久综合伊人77777尤物| 日韩视频在线你懂得| 久久精品国产欧美亚洲人人爽| 欧美乱妇高清无乱码| 黄色成人片子| 亚洲欧美另类久久久精品2019| 欧美成人日本| 午夜久久久久久久久久一区二区| 欧美高清hd18日本| 国内一区二区三区| 午夜精品久久久久久久99热浪潮| 亚洲电影在线看| 久久精品99无色码中文字幕 | 女人色偷偷aa久久天堂|