《趣学算法》动态规划
时间:2019-11-30
本文章向大家介绍《趣学算法》动态规划,主要包括《趣学算法》动态规划使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
2019-11-30
10:05:54
#include <bits/stdc++.h> #include <stdlib.h> #include <stdio.h> using namespace std; #define maxn 10005 #define M 105 int c[M][maxn]; int w[M],v[M]; int x[M];//x[M]表示第i个物品是否放入购物车 int main(){ int i,j,n,W; cout<<"请输入物品的个数: "; cin>> n; cout<<"请输入购物车的容量:"; cin>>W; cout<<"请输入每个物品的重量w 和 价值 v,用空格分开:"; for(int i=1;i<=n;++i){ cin>>w[i]>>v[i]; } for(i=0;i<=n;++i){ c[i][0]=0; } for(j=0;j<=W;++j){ c[0][j] = 0; } for(i=1;i<=n;++i){ for(int j=1;j<=W;++j){ if(j<w[i]){//当物品重量大于购物车容量时,不放入 c[i][j] = c[i-1][j]; } else{ c[i][j] = max(c[i-1][j],c[i-1][j-w[i]]+v[i]); } } } cout<<"装入购物车的最大价值为: "<<c[n][W]<<endl; //逆向构造最优解 j = W; for(i=n;i>0;--i){ if(c[i][j]>c[i-1][j]){ x[i]=1; j -= w[i]; }else{ x[i] = 0; } } cout<<"装入购物车的物品为:"<<endl; for(int i=1;i<=n;++i){ if(x[i]==1){ cout<<i<<" "; } } system("pause"); return 0; }
原文地址:https://www.cnblogs.com/JasonPeng1/p/11961516.html
- 【死磕Java并发】—– J.U.C之AQS:CLH同步队列
- 使用Python完成你的第一个学习项目
- CA,给了数据库,给了机器,为啥也扩不了容?
- 如何使用Anaconda设置机器学习和深度学习的Python环境
- MQ,互联网架构解耦神器
- 预测随机机器学习算法实验的重复次数
- 服务化了,没想到耦合更加严重?
- 如何在Python中扩展LSTM网络的数据
- 使用Keras的Python深度学习模型的学习率方案
- 全球电脑手机无一幸免,英特尔CPU“漏洞事件”到底多严重?
- 评估Keras深度学习模型的性能
- Python机器学习的练习二:多元线性回归
- 熔断器 Hystrix 源码解析 —— 命令合并执行
- Python机器学习的练习一:简单线性回归
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- CISCN2019华北赛区Day2-HackWorld
- ZJCTF-NiZhuanSiWei
- xxe漏洞学习
- De1CTF2019-SSRFME
- BJDCTF2nd-EasyMd5
- BJDCTF2nd-fakegoogle
- java_Scanner类、Random类、ArrayList 类的使用
- 使用Python获取Oracle索引信息
- 监控Oracle数据泵状态
- MySQL MHA部署 Part 5 MHA部署指南
- MySQL MHA部署 Part 6 MHA故障转移测试
- 一步步搭建基于GTID的MySQL复制
- innobackupex命令总结
- 使用sysbench对数据库进行压测 Part2 sysbench语法介绍
- MySQL Galera Cluster全解析 Part 9 监控Galera Cluster