• <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>

            Onway

            我是一只菜菜菜菜鳥...
            posts - 61, comments - 56, trackbacks - 0, articles - 34

            pku 1014 Dividing 多重背包

            Posted on 2010-08-04 23:26 Onway 閱讀(299) 評論(0)  編輯 收藏 引用 所屬分類: 傷不起的ACM

            pku 1014 Dividing

            這個(gè)題目跟3211 Washing Clothes做法非常相似,雖然3211是0-1背包,1014是多重背包。思路都是將總價(jià)值的一半作為背包容量,然后進(jìn)行背包策略就行了。

            用多重背包的個(gè)數(shù)標(biāo)記,時(shí)間為O(N*M),一次AC。

            然后用二進(jìn)制物品壓縮,數(shù)組開小了,居然報(bào)WA,暈死。

             1#include <iostream>
             2using namespace std;
             3const int MAX=60000;
             4bool sgn[MAX+1];
             5int cnt[MAX+1];
             6int data[7];
             7int main()
             8{
             9    int cas=0;
            10    while(cin>>data[1]>>data[2]>>data[3]>>data[4]>>
            11        data[5]>>data[6])
            12    {
            13        int i,j,n=6,sum=0;
            14        for(i=1;i<=n;++i)
            15            if(data[i]!=0)
            16                break;
            17        if(i>n)        break;
            18
            19        ++cas;
            20
            21        memset(sgn,0,sizeof(sgn));
            22        sgn[0]=1;
            23        for(i=1;i<=n;++i)
            24        {
            25            memset(cnt,0,sizeof(cnt));
            26            for(j=i;j<=MAX;++j)
            27                if(!sgn[j]&&sgn[j-i]&&cnt[j-i]<data[i])
            28                {
            29                    cnt[j]=cnt[j-i]+1;
            30                    sgn[j]=1;
            31                }

            32        }

            33        
            34        for(i=1;i<=n;++i)
            35            sum+=data[i]*i;
            36        if(sum%2||!sgn[sum/2])
            37        {
            38            cout<<"Collection #"<<cas<<":"<<endl;
            39            cout<<"Can't be divided."<<endl;
            40            cout<<endl;
            41        }

            42        else
            43        {
            44            cout<<"Collection #"<<cas<<":"<<endl;
            45            cout<<"Can be divided."<<endl;
            46            cout<<endl;
            47        }

            48    }

            49    return 0;
            50}

            51
            中文成人无码精品久久久不卡| 久久久久香蕉视频| 国产精品久久免费| 18岁日韩内射颜射午夜久久成人| 亚洲国产精品人久久| 久久九九久精品国产| 久久人爽人人爽人人片AV| 91久久精品视频| 亚洲乱码精品久久久久..| 日本久久久精品中文字幕| 国内精品久久久久影院老司| 久久96国产精品久久久| 久久久久久久久66精品片| 久久这里只有精品久久| 亚洲午夜久久久久久噜噜噜| 久久午夜电影网| 久久久精品人妻一区二区三区蜜桃 | 亚洲国产视频久久| 久久不射电影网| 无码日韩人妻精品久久蜜桃| 久久亚洲高清综合| 久久噜噜电影你懂的| 色婷婷综合久久久久中文一区二区| 狠狠人妻久久久久久综合蜜桃| 亚洲国产一成人久久精品| 亚洲日本久久久午夜精品| 久久99久久无码毛片一区二区| AV狠狠色丁香婷婷综合久久| 狠狠精品久久久无码中文字幕 | 青青青伊人色综合久久| 亚洲中文字幕无码久久综合网| 午夜精品久久久久久| 久久精品无码一区二区三区免费| 国产成人精品久久二区二区| 色欲综合久久中文字幕网 | 91精品国产综合久久香蕉| 欧美牲交A欧牲交aⅴ久久| 久久精品无码一区二区无码| 亚洲va久久久噜噜噜久久男同 | 无码任你躁久久久久久老妇App| 亚洲国产成人久久综合一区77 |