0-1背包
来源:互联网 发布:量化投资 数据库 编辑:程序博客网 时间:2024/05/18 02:17
#include<stdio.h>#include<stdlib.h>int m,n;int c[100][100];void knapsack(int m,int n,int w[],int v[]){int i,j;for(i=0;i<n+1;i++)c[i][0]=0;for(j=0;j<m+1;j++)c[0][j]=0;for(i=1;i<n+1;i++)for(j=1;j<m+1;j++){if(w[i-1]<=j){if(c[i-1][j]<(c[i-1][j-w[i-1]]+v[i-1]))c[i][j]=c[i-1][j-w[i-1]]+v[i-1];elsec[i][j]=c[i-1][j];}elsec[i][j]=c[i-1][j];}int x[100]={0};for(i=n;i>0;i--){if(c[i][m]>c[i-1][m]){x[i-1]=1;m-=w[i-1];}}for(i=0;i<n;i++)printf("%d ",x[i]);printf("\n");}int main(){int m,n;int i,j;scanf("%d%d",&m,&n);int w[20],v[20];for(int i=0;i<n;i++)scanf("%d%d",&w[i],&v[i]);knapsack(m,n,w,v);for(i=0;i<n+1;i++){for(j=0;j<m+1;j++)printf("%2d ",c[i][j]);printf("\n");}printf("the most value is:%d\n",c[n][m]);system("pause");return 0;}
0 0
- 背包问题(0-1背包、完全背包、多重背包)详解
- 0-1背包----完全背包
- 0-1背包+分数背包
- 背包问题之0/1背包,完全背包,多重背包,混合背包
- 【背包问题】背包问题之0-1背包、完全背包、多重背包
- 0/1背包,完全背包,多重背包方程
- 0-1背包、部分背包和完全背包模板
- 背包问题(0/1背包,完全背包)
- 背包笔记-含0/1背包问题、完全背包问题、多重背包问题、二维背包问题、分组背包问题
- 0/1背包与完全背包
- 背包问题之0-1背包(一)
- 背包问题之0-1背包(二)
- 背包问题之0-1背包(三)
- 背包问题和0-1背包问题
- 背包问题start...:0-1背包
- 多重背包转换成0-1背包
- 贪心背包和0-1背包问题
- 0-1背包和部分背包问题
- ffmpeg x264编译与使用介绍(备忘)
- apktool 反编译+签名
- Deep Learning in NLP (一)词向量和语言模型
- JAVA反射机制
- UML类图几种关系的总结
- 0-1背包
- 大规模优化算法 - LBFGS算法
- 一次性弄清 高通骁龙芯片最新产品线简介
- UDP的connect函数
- 记录一些用过的东西
- 俄专家正告称电视亦可变成歹意软件进犯方针
- 虚析构函数(√)、纯虚析构函数(√)、虚构造函数(X)
- C#数据导出到Excel中
- JavaScript 数组