完全背包

原创 2016年08月30日 13:56:05
完全背包是指 物品无限使用的,
所以在枚举的时候要将for循环用++的方式来枚举。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<algorithm>
using namespace std;
const int maxn=10010;
int s[maxn],t[maxn],dp[maxn];
int main(){
	memset(s,0,sizeof(s));
	memset(t,0,sizeof(t));
	memset(dp,0,sizeof(dp));
	int m,n,i,j,k;
	scanf("%d%d",&n,&m);
	for(i=1;i<=m;i++)
		scanf("%d%d",&s[i],&t[i]);
	for(i=1;i<=m;i++)
		for(int j=t[i];j<=n;j++)//与01背包的差别就在这里 
		dp[j]=max(dp[j],dp[j-t[i]]+s[i]);
	printf("%d",dp[n]);
	return 0;	
}

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

HDU 5410 CRB and His Birthday (2015年多校比赛第10场)

1.题目描述:点击打开链接 2.解题思路:本题是完全背包问题的一种变形。根据题意描述,每种物品的价值随着A[i]是线性变化的,但是并不随着B[i]线性变化,B[i]仅仅是在第一次挑选第i件物品是才算入...

完全背包

#include #include #include #include using namespace std; int w[10005],v[10005],dp[1000...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

hdu 2159 FATE(完全背包)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2159 解题方案:完全背包,dp[i][j]表示前i个物品凑出价值j的最小花费。 则: 第i种...

【杭电oj1114】Piggy-Bank

Piggy-Bank Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Tot...

poj 1252 Euro Efficiency 正负完全背包

//由于输入的货币正负都可以,所以要分正负两次背包 //记的完全背包的时候不要放在一个for(i)里, //应该先正后负,因为是从0开始的,币值不能到负的, //但其实可以先出现负的,之后又加正的变为...

每日三题-Day2-B(HDU 1114 Piggy-Bank 完全背包)

原题地址 Piggy-Bank Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...

完全背包 初学篇

完全背包 初学

完全背包问题(二)

完全背包问题: 一问题描述: 有N种物品和一个容量为V的背包,每种物品都有无限件可用。 第i种物品的费用是c[i],价值是w[i]。 求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价...

完全背包问题----思想的理解

最近学习动态规划,在背包问题处被卡了很久,故在此处把这几天的遇到的问题和自己的理解进行一下总结。 这篇博文主要介绍的是完全背包的思想,包括它的三种状态转移方程。作为引入完全背包问题的前提,附带的介...

hdu1248

寒冰王座 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)