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

poj 3093 Margaritas on the River Walk

   這是一個動態(tài)規(guī)劃題,據(jù)說是背包問題的變形。我動態(tài)規(guī)劃做得很少,解法一直按照算法導(dǎo)論的思想分解重疊子問題。
   題意是用錢盡可能多的買物品,每種物品買一個,問有多少種買法。
   我也想不出這是什么背包問題的變形,沒做過幾個背包問題,也沒看過背包九講。還是堅持認(rèn)為正確的用狀態(tài)描述成子問題
就一定能解題的。今天和隊友在做專題時候做到這個題,我一直做了一上午都沒出來。
   后面發(fā)現(xiàn)了個性質(zhì)就可以直接轉(zhuǎn)換為類似最簡單的背包問題了。排序物品價值,從最大物品開始分解子問題,用剩余物品數(shù)
和錢描述問題的狀態(tài)。當(dāng)前物品是否必須取,是根據(jù)當(dāng)前的錢把剩下的物品全買了之后剩下的錢還是否大于當(dāng)前物品的價值,
如果大于就必須買,否則可以買或者不買。

   為了正確描述問題的狀態(tài),必須事先排序價值數(shù)組,因為排序之后可以保證不能買當(dāng)前物品的時候一定不能買前面的物品,
那么我們對前面物品的處理就是正確的了。
至此可以進行最簡單的子問題分解了。到最后物品處理完之后(物品數(shù)為0),如果錢
一點都沒減少,那么(0, M) = 0,否則(0, M) = 1。注意這個邊界處理,否則會wa。
   所以,需要先對價值數(shù)組排序,并計算出表示前N個物品價值和的數(shù)組。
   做不出來的時候,翻了下別人的解法,一頭霧水。看來還是算法導(dǎo)論的思想指導(dǎo)意義大多了。。。

   代碼如下:
#include <stdio.h> 
#include <string.h>
#include <algorithm>
using namespace std;
typedef long long INT;
INT nAns[40][1010];
INT nValue[100];
INT nSum[100];
INT nN, nM;

INT GetAns(INT nNum, INT nMoney)
{
    if (nAns[nNum][nMoney] == -1)
    {
        if (nNum == 0)
        {
            nAns[nNum][nMoney] = 1;
            if (nMoney == nM)
            {
                nAns[nNum][nMoney] = 0;
            }
        }
        else
        {
            INT nRet = 0;

            if (nMoney - nSum[nNum - 1] >= nValue[nNum])
            {
                nRet = GetAns(nNum - 1, nMoney - nValue[nNum]);
            }
            else
            {
                if (nMoney >= nValue[nNum])
                {
                    nRet += GetAns(nNum - 1, nMoney - nValue[nNum]);
                }
                nRet += GetAns(nNum - 1, nMoney);
            }

            nAns[nNum][nMoney] = nRet;
        }
    }
    return nAns[nNum][nMoney];
}

int main()
{
    INT nT;

    scanf("%I64d", &nT);
    for (INT i = 1; i <= nT; ++i)
    {
        scanf("%I64d%I64d", &nN, &nM);
        for (INT j = 1; j <= nN; ++j)
        {
            scanf("%I64d", &nValue[j]);
        }
        memset(nAns, -1, sizeof(nAns));
        sort(nValue + 1, nValue + nN + 1);
        nSum[0] = 0;
        for (INT j = 1; j <= nN; ++j)
        {
            nSum[j] = nSum[j - 1] + nValue[j];
        }
        printf("%I64d %I64d\n", i, GetAns(nN, nM));
    }

    return 0;
}

posted on 2012-08-30 14:11 yx 閱讀(1390) 評論(0)  編輯 收藏 引用 所屬分類: 動態(tài)規(guī)劃


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


<2011年11月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

導(dǎo)航

統(tǒng)計

公告

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

me

好友

同學(xué)

網(wǎ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>
            国产综合久久久久久| 国产亚洲欧洲一区高清在线观看| 久久免费精品视频| 久久精品一区二区三区不卡牛牛| 亚洲一区二区免费| 亚洲午夜高清视频| 欧美在线看片| 久久综合网络一区二区| 欧美黄色免费网站| 在线视频免费在线观看一区二区| 日韩视频在线你懂得| 夜夜嗨av一区二区三区网页| 一区二区三区四区五区视频| 亚洲午夜精品一区二区| 欧美一区亚洲二区| 欧美成人免费小视频| 欧美日韩免费看| 国产视频自拍一区| 99精品国产在热久久下载| 亚洲女性喷水在线观看一区| 欧美一区二区三区免费观看| 噜噜噜噜噜久久久久久91| 欧美日韩一本到| 韩日视频一区| 99在线|亚洲一区二区| 午夜伦欧美伦电影理论片| 久久久久国产精品麻豆ai换脸| 亚洲国产aⅴ天堂久久| 欧美成人高清视频| 亚洲综合成人婷婷小说| 欧美高清一区二区| 国内精品久久久久影院色| 在线亚洲自拍| 欧美高清你懂得| 性感少妇一区| 欧美色另类天堂2015| 亚洲福利免费| 久久蜜桃香蕉精品一区二区三区| 99天天综合性| 欧美精品免费在线观看| 韩国一区二区三区在线观看| 亚洲欧美国产日韩天堂区| 亚洲第一页在线| 久久精品在线播放| 国产偷国产偷精品高清尤物| 亚洲影视九九影院在线观看| 亚洲第一区在线| 久久在线91| 国内精品久久久久久久影视麻豆| 亚洲制服av| 亚洲九九精品| 欧美国产日韩亚洲一区| 亚洲国产精品久久久久久女王| 久久全球大尺度高清视频| 亚洲欧美日本在线| 国产精品亚洲不卡a| 亚洲视频第一页| 亚洲久久一区| 欧美日韩一区二区三区免费| 中日韩视频在线观看| 亚洲国产日韩欧美在线99| 麻豆av福利av久久av| 亚洲国产精品嫩草影院| 欧美成人精品一区二区| 久久综合给合| 在线日韩视频| 欧美激情精品久久久六区热门| 久久久水蜜桃av免费网站| 一区二区三区在线免费观看| 久热re这里精品视频在线6| 久久黄金**| 在线播放中文字幕一区| 久久亚洲精选| 欧美肥婆在线| 正在播放日韩| 亚洲在线免费| 国内精品久久久久影院色| 欧美二区在线看| 欧美另类极品videosbest最新版本| 99在线|亚洲一区二区| 中文精品一区二区三区| 国产日韩欧美在线观看| 免费在线看成人av| 欧美日本一区二区视频在线观看| 亚洲一区精品电影| 久久成人人人人精品欧| 亚洲欧洲精品一区二区三区不卡| 日韩视频二区| 狠狠色综合色区| 亚洲精品黄色| 国产日本欧洲亚洲| 亚洲国产精品久久久久秋霞蜜臀| 欧美精品日韩精品| 久久激情视频| 欧美人与性动交a欧美精品| 小黄鸭视频精品导航| 久久综合九色综合欧美狠狠| 亚洲与欧洲av电影| 老司机午夜免费精品视频 | 女人天堂亚洲aⅴ在线观看| 欧美激情四色 | 国产日韩在线视频| 亚洲国产黄色| 国产一区二区三区在线观看免费视频| 免费在线欧美黄色| 国产精品一区=区| 亚洲成人在线视频播放| 国产精品久久网| 亚洲国产精品传媒在线观看| 国产精品实拍| 91久久精品国产91久久性色tv| 国产精品亚洲一区| 亚洲国产成人午夜在线一区| 国产精品人人做人人爽| 最新日韩av| 一区二区三区无毛| 欧美一区观看| 午夜精品视频在线观看| 欧美激情精品久久久久久黑人| 久久天天躁夜夜躁狠狠躁2022 | 亚洲精品精选| 欧美中文在线视频| 亚洲一区中文| 欧美日韩视频在线一区二区| 欧美成人视屏| **欧美日韩vr在线| 久久成人精品视频| 欧美一区二区三区在线观看| 欧美日韩和欧美的一区二区| 久久影院午夜片一区| 国产亚洲精品成人av久久ww| 99视频在线精品国自产拍免费观看| 91久久精品美女高潮| 久久久www成人免费无遮挡大片| 久久国产精品久久精品国产| 国产精品欧美激情| 亚洲欧美另类中文字幕| 亚洲一区二区三区三| 欧美三日本三级少妇三2023| 日韩亚洲精品电影| 亚洲天堂网在线观看| 国产精品高潮呻吟视频| 亚洲午夜激情网站| 欧美亚洲一区二区三区| 国产老女人精品毛片久久| 亚洲欧美日韩综合aⅴ视频| 欧美主播一区二区三区| 国产在线不卡| 久久综合久久久久88| 亚洲丰满少妇videoshd| 亚洲伦伦在线| 欧美日韩亚洲一区三区| 亚洲夜间福利| 欧美中文字幕在线视频| 在线观看91精品国产入口| 免费人成精品欧美精品| 最新国产乱人伦偷精品免费网站| 一本色道久久88亚洲综合88| 欧美日韩直播| 欧美在线视频一区二区三区| 久久综合九色综合久99| 亚洲精华国产欧美| 欧美婷婷久久| 久久精品综合| 亚洲精品免费一区二区三区| 午夜精品一区二区三区在线播放| 国产在线欧美| 欧美国产日韩一二三区| 亚洲免费一级电影| 欧美激情视频一区二区三区在线播放| 一区二区三区国产盗摄| 国产综合久久久久影院| 欧美激情亚洲| 香蕉久久国产| 亚洲精品在线看| 欧美中文字幕| 99在线热播精品免费| 国产欧美一二三区| 欧美另类一区| 午夜视频在线观看一区| 欧美国产一区二区| 欧美一级专区免费大片| 亚洲精品国精品久久99热| 国产日韩欧美一区二区三区在线观看| 欧美激情偷拍| 午夜在线精品偷拍| 亚洲第一主播视频| 久久久视频精品| 亚洲一区二区三区精品在线| 黄网站色欧美视频| 国产精品福利在线观看| 欧美激情中文字幕在线| 久久国产成人| 一区二区三区四区国产精品| 欧美大片在线观看| 午夜久久久久久| 亚洲欧洲三级| 亚洲福利在线看| 国产亚洲一区在线| 国产欧美在线视频|