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

            天下

            記錄修行的印記

            動態(tài)規(guī)劃算法(5):背包最大價值問題

            #include "stdafx.h"

            int c[20][100];/*對應每種情況的最大價值*/


            //int m 背包容量
            //int n 背包個數(shù)
            int knapsack(int m,int n)
            {
                int i,j,w[20],p[20];
                for(i=1;i<n+1;i++) 
                {
                    printf("請輸入第(%d)個物品重量,價值:\n",i);
                    scanf("%d,%d",&w[i],&p[i]);
                }    
                for(i=0;i<10;i++)
                    for(j=0;j<100;j++)
                        c[i][j]=0;/*初始化數(shù)組*/

                for(i=1;i<n+1;i++)
                {
                    for(j=1;j<m+1;j++)
                    {
                        if(w[i]<=j) /*如果當前物品的容量小于背包容量*/
                        {
                            if(p[i]+c[i-1][j-w[i]]>c[i-1][j])
                            {
                                //如果本物品的價值加上背包剩下的空間能放的物品的價值
                                
            //大于上一次選擇的最佳方案,
                                
            //則更新c[i][j]
                                c[i][j]=p[i]+c[i-1][j-w[i]];
                            }
                            else 
                            {
                                c[i][j]=c[i-1][j];
                            }
                        }
                        else c[i][j]=c[i-1][j];
                    }
                }
                return(c[n][m]);
            }
            int main()
            {
                //int m 背包容量
                
            //int n 背包個數(shù)
                int m,n;
                

                printf("請輸入背包最大承重,物品個數(shù):\n");
                scanf("%d,%d",&m,&n);
                
                printf("最大價值:%d \r\n",knapsack(m,n));

                int i,j;

                m += 3;
                n += 3;
                for(j=0;j<m;j++)
                {
                    printf("%02d  ",j);
                }
                printf("\r\n");
                for(j=0;j<m;j++)
                {
                    printf("----",j);
                }
                printf("\r\n");
                for(i=0;i<n;i++)
                {
                    for(j=0;j<m;j++)
                    {
                        printf("%02d  ",c[i][j]);
                        if(j==m-1) printf("\n");
                    }
                }
                system("pause");

                return 0;

            }

            posted on 2013-03-27 09:53 天下 閱讀(885) 評論(0)  編輯 收藏 引用 所屬分類: 算法

            <2012年10月>
            30123456
            78910111213
            14151617181920
            21222324252627
            28293031123
            45678910

            導航

            統(tǒng)計

            常用鏈接

            留言簿(4)

            隨筆分類(378)

            隨筆檔案(329)

            鏈接

            最新隨筆

            搜索

            最新評論

            久久久久久亚洲精品不卡| 国产精品免费久久久久电影网| 一级做a爰片久久毛片看看| 久久精品亚洲欧美日韩久久| 日本精品久久久久久久久免费| 久久久久久久久久免免费精品 | 久久精品a亚洲国产v高清不卡| 久久精品午夜一区二区福利| 免费国产99久久久香蕉| 久久这里的只有是精品23| 久久婷婷五月综合色高清| 久久93精品国产91久久综合| 久久成人小视频| 97久久精品人人做人人爽| 亚洲AV日韩精品久久久久久 | 国产精品久久久久久久午夜片| 久久精品国产亚洲5555| 人妻无码αv中文字幕久久琪琪布 人妻无码精品久久亚瑟影视 | 精品久久久久香蕉网| 成人精品一区二区久久| 中文字幕乱码人妻无码久久| 大香网伊人久久综合网2020| 久久亚洲日韩精品一区二区三区| 久久伊人色| 久久久精品久久久久久 | 久久99国产综合精品| 亚洲熟妇无码另类久久久| 亚洲国产成人久久一区久久| 精品久久久久久无码免费| 国产A级毛片久久久精品毛片| 久久久久久亚洲Av无码精品专口 | 久久无码中文字幕东京热| 久久综合久久鬼色| 久久性精品| 蜜臀久久99精品久久久久久| 国产精品嫩草影院久久| 国内精品久久久久久久coent| 香蕉久久一区二区不卡无毒影院| 久久国产精品久久| 996久久国产精品线观看| 大伊人青草狠狠久久|