• 个人简介

    评论的组成

    隐藏 内容

    划掉

    居中居中

    书法字书法字

    颜色大全:

    \color{red}\mathcal{红} 紫红\color{plum}\mathcal{紫红} 粉红\color{coral}\mathcal{粉红} 品红\color{magenta}\mathcal{品红} 深红\color{crimson}\mathcal{深红} \color{orange}\mathcal{橙} \color{pink}\mathcal{粉} \color{yellow}\mathcal{黄} 绿\color{green}\mathcal{绿} \color{cyan}\mathcal{青} \color{blue}\mathcal{蓝} \color{purple}\mathcal{紫} \color{black}\mathcal{黑} \color{gold}\mathcal{金} \color{silver}\mathcal{银} \color{brown}\mathcal{棕} \color{gray}\mathcal{灰} 蓝紫\color{violet}\mathcal{蓝紫} 浅橙\color{salmon}\mathcal{浅橙} 棕黄\color{tan}\mathcal{棕黄} 黄褐\color{olive}\mathcal{黄褐} 海蓝\color{aquamarine}\mathcal{海蓝} 青绿\color{turquoise}\mathcal{青绿} 深蓝\color{navy}\mathcal{深蓝} 淡紫\color{orchid}\mathcal{淡紫} 褐红\color{maroon}\mathcal{褐红} 深褐\color{chocolate}\mathcal{深褐} 赭黄\color{sienna}\mathcal{赭黄} 土黄\color{khaki}\mathcal{土黄}

    隐身区(仔细食用):

    \color{white}\mathcal{白}乳白\color{Ivory}\mathcal{乳白}天蓝\color{azure}\mathcal{天蓝}淡紫\color{lavender}\mathcal{淡紫}浅褐\color{beige}\mathcal{浅褐}橘黄\color{bisque}\mathcal{橘黄}


    代码

    万能头文件

    #include<bits/stdc++.h>
    

    DP多重背包

    //创建变量 
    int	种类,容量;
    int 数量[种类],体积[种类],价值[种类];
    int DP[种类][容量];
    int main(){
    	//输入 
    	cin>>种类>>容量;
    	for(int c=1;c<=种类;c++){
    		cin>>数量[c]>>体积[c]>>价值[c];
    	}
    	//运算 
    	for(int c=1;c<=种类;c++){//枚举种类 
    		for(int v=0;v<=容量;v++){//枚举在剩余v的容量时(物品体积可能是0)
    			for(int b=0;b<=数量[c];b++){//枚举放入b个第c种物品 
    				if(v>=b*体积[c]){//判断装b个第c种物品时能否让背包剩余v的容量
    					//比较放入?个第c种物品后剩余v的容量时的新规划与旧规划那个价值大 
    					y[c][v]=max(y[c][v],y[c-1][v-b*体积[c]]+b*价值[c]);
    				}else{
    					//因为b只增不减,总体积只会越来越大 
    					//所以当背包装不下b个第c种物品时,后面的就没必要判断了 
    					break;//直接终止循环,节省运行时间 
    				}
    			}
    		}
    	}
    	//输出 
    	cout<<DP[种类][容量];
        return 0;
    }
    //<<setprecision(1)<<fixed