博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一本通 1267:【例9.11】01背包问题
阅读量:5810 次
发布时间:2019-06-18

本文共 963 字,大约阅读时间需要 3 分钟。

经典的01背包问题模板

这里提供两种做法:

#include 
#include
using namespace std;//Mystery_Sky//二维01背包模板 #define M 1000int f[M][M], ans;int v, m, c[M], w[M];int main() { scanf("%d%d", &v, &m); for(int i = 1; i <= m; i++) scanf("%d%d", &c[i], &w[i]); for(int i = 1; i <= m; i++) for(int j = 0; j <= v; j++) { if(j >= c[i]) f[i][j] = max(f[i-1][j], f[i-1][j-c[i]]+w[i]); else f[i][j] = f[i-1][j]; } printf("%d\n", f[m][v]); return 0;}

#include 
#include
using namespace std;//Mystery_Sky//一维01背包模板 #define M 1000int f[M], c[M], w[M];int ans, v, m;int main() { scanf("%d%d", &v, &m); for(int i = 1; i <= m; i++) scanf("%d%d", &c[i], &w[i]); for(int i = 1; i <= m; i++) for(int j = v; j >= c[i]; j--) { f[j] = max(f[j], f[j-c[i]]+w[i]); } printf("%d\n", f[v]); return 0;}

转载于:https://www.cnblogs.com/Benjamin-cpp/p/10840974.html

你可能感兴趣的文章
Sharepoint MOSS stsadm常用命令汇总
查看>>
***RESTful API 设计指南(阮一峰)
查看>>
Mysql两张表相同ID匹配,输出到新表,删除旧表匹配
查看>>
正则表达式收集
查看>>
博客访问量暴涨的10条改良秘方
查看>>
img 样式单和属性
查看>>
感受JavaOne: 昔日风光何在?
查看>>
Junit (二) 断言
查看>>
Inception:LinkedIn是如何利用异常日志实现服务监控的
查看>>
面对勒索病毒:补救用三招 防御是高招
查看>>
助力家庭大换洗 金羚洗衣机“化繁为简”
查看>>
AT&T全面开通WiFi通话功能
查看>>
OA办公系统如何实现费控管理?
查看>>
浅析呼叫中心行业发展的“三化”趋势
查看>>
武汉网络信息安全产业有望冲进三甲
查看>>
微博活跃用户连续10季度增长超30%
查看>>
struts.xml加载失败的问题
查看>>
【hibernate框架】EJBQL第一部分
查看>>
(一三二)类的三种常见技术
查看>>
Android 为应用增加可移动的悬浮窗口
查看>>