http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1086

思路  裸的多重背包 巩固一下刚学的骚操作

#include<bits/stdc++.h>
using namespace std;
const int maxn = ;
int w[maxn],p[maxn],c[maxn];//分别表示 体积 价值和数量
int dp[]; int main ()
{
int n,W;
cin >> n >> W;
for(int i=;i<=n;i++)
cin>>w[i]>>p[i]>>c[i];
for(int i=;i<=n;i++)
{
if(w[i]*c[i] > W)//完全背包
{
for(int j=w[i];j <= W;j++)
dp[j] = max(dp[j],dp[j-w[i]]+p[i]);
}
else
{
int k=,t=c[i];
while (t>k)
{
for(int j=W;j >= w[i]*k;j--)
dp[j] = max(dp[j],dp[j-w[i]*k]+k*p[i]);
t-=k,k*=;
}
for(int j=W;j>=w[i]*t;j--)
dp[j] = max(dp[j],dp[j-w[i]*t]+t*p[i]);
}
}
cout<<dp[W]<<endl;
}

51nod 1086 背包问题 V2的更多相关文章

  1. 51nod 1086 背包问题 V2 【二进制/多重背包】

    1086 背包问题 V2  基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放 ...

  2. 51nod 1086背包问题V2 (完全背包模板题)

    1086 背包问题 V2 1 秒 131,072 KB 20 分 3 级题 题目描述 有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放在容量为W的背包里,每种物品的体积为W1, ...

  3. 51nod 1086 背包问题 V2(二进制优化多重背包)

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1086 题解:怎么用二进制优化多重背包,举一个例子就明白了. ...

  4. 51Nod:1086背包问题 V2

    1086 背包问题 V2 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放在容量为W的背包里 ...

  5. 51nod1086 背包问题 V2

    我都快不会写二进制优化多重背包了...卡了一下常数从rank100+到20+... #include<cstdio> #include<cstring> #include< ...

  6. 51nod——1086、1257背包问题V2(多重背包二进制拆分转01) V3(分数规划+二分贪心)

    V3其实和dp关系不大,思想挂标题上了,丑陋的代码不想放了.

  7. AC日记——背包问题 V2 51nod 1086

    有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放在容量为W的背包里,每种物品的体积为W1,W2......Wn(Wi为整数),与之相对应的价值为P1,P2......Pn(Pi ...

  8. 51nod 1257 背包问题 V3

    1257 背包问题 V3 基准时间限制:3 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 N个物品的体积为W1,W2......Wn(Wi为整数),与之相对应的价值为P1,P2.. ...

  9. 51nod 多重背包问题(动态规划)

    多重背包问题 一个背包,承量有限为W,有n种物体,第i种物体,价值Vi,占用重量为 Wi,且有Ci件,选择物品若干放入背包,使得总重量不超过背包的承重.总价值最大? 输入 第1行,2个整数,N和W中间 ...

随机推荐

  1. Java学习之路-Burlap学习

    今天我们来学一下Burlap. Burlap是一种基于XML远程调用技术,但与其他基于XML的远程技术(例如SOAP或者XML-RPC)不同,Burlap的消息结构尽可能的简单,不需要额外的外部定义语 ...

  2. html 1:1比例显示

    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale= ...

  3. Oracle与Sql server 在SQL上的不同

    Oracle与Sql server都遵循SQL-92标准:http://owen.sj.ca.us/rkowen/howto/sql92F.html,但是也有一些不同之处,差别如下: Oracle中表 ...

  4. 查看修改MySQL字符集

    查看修改MySQL字符集 http://blog.sina.com.cn/s/blog_70ac6bec01016fts.html 查看修改MySQL字符集 (2012-08-22 09:53:21) ...

  5. git分支名一直带rebasing,如何去除

    git分支名一直rebasing, 使用git rebase --continue git rebase --skip git reset --abort 都没有用, 最后直接删除 当前目录下的.gi ...

  6. Andrew Ng-ML-第八章-正则化

    1.过度拟合overfitting 过度拟合,因为有太多的特征+过少的训练数据,学习到的假设可能很适应训练集,但是不能泛化到新的样例.即泛化generalize能力差. 解决办法: 1.手动/使用选择 ...

  7. 【Cocos2dx 3.3 Lua】剪裁结点ClippingNode

    参考资料:     http://shahdza.blog.51cto.com/2410787/1561937 http://blog.csdn.net/jackystudio/article/det ...

  8. for和foreach的区别

    public class Program { public static void Main() { Program program = new Program(); program.For();// ...

  9. 微信小程序-1

    微信小程序 (开发微信小程序基础:HTML+js+css) l  准备工作 工具安装 开发工具是由微信官方提供 项目的预览(校验环境) l  开发体验阶段 -         Hello world ...

  10. zw版【转发·台湾nvp系列Delphi例程】HALCON SetComprise1

    zw版[转发·台湾nvp系列Delphi例程]HALCON SetComprise1 procedure TForm1.Button1Click(Sender: TObject);var image0 ...