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

            天下

            記錄修行的印記

            動態規劃算法(5):背包最大價值問題

            #include "stdafx.h"

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


            //int m 背包容量
            //int n 背包個數
            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;/*初始化數組*/

                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 背包個數
                int m,n;
                

                printf("請輸入背包最大承重,物品個數:\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 天下 閱讀(891) 評論(0)  編輯 收藏 引用 所屬分類: 算法

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導航

            統計

            常用鏈接

            留言簿(4)

            隨筆分類(378)

            隨筆檔案(329)

            鏈接

            最新隨筆

            搜索

            最新評論

            色8久久人人97超碰香蕉987| 国产叼嘿久久精品久久| 亚洲欧美日韩久久精品第一区| 亚洲AV无码久久| 国产精品无码久久综合网| 一级做a爰片久久毛片看看| 精品无码久久久久久尤物| 精品久久久无码中文字幕天天| 久久午夜夜伦鲁鲁片免费无码影视| 久久综合狠狠色综合伊人| 久久久久久久精品妇女99| 94久久国产乱子伦精品免费| 99蜜桃臀久久久欧美精品网站 | 香蕉aa三级久久毛片| 国产精品久久久久久久久鸭| 久久精品桃花综合| 久久亚洲国产成人精品无码区| 久久99国产精一区二区三区| 亚洲午夜久久久久妓女影院 | 欧美久久天天综合香蕉伊| 国产欧美久久一区二区| 国产精品美女久久久m| 久久人妻少妇嫩草AV蜜桃| 久久笫一福利免费导航| 欧美亚洲另类久久综合婷婷 | 国产精品美女久久久久av爽| 久久精品无码一区二区三区| 色狠狠久久AV五月综合| 亚洲精品乱码久久久久久 | 久久精品日日躁夜夜躁欧美| 亚洲午夜久久久| 久久精品国产日本波多野结衣| 99久久国产亚洲综合精品| 狠狠色丁香久久婷婷综合图片| 波多野结衣久久一区二区| 中文字幕精品久久久久人妻| 久久天天躁狠狠躁夜夜avapp| 日产精品99久久久久久| 高清免费久久午夜精品| 国产成人精品久久亚洲高清不卡| 品成人欧美大片久久国产欧美|