这个问题的原型就是完全背包问题模型,所不同的是完全背包问题要求的是最大价值,而这个是最小价值

完全背包问题的模型代码是

for (int i = 1; i <= n; ++ i)for (int j = c[i]; j <= v; ++ j)dp[j] = max(dp[j - c[i]] + w[i], dp[j]);

明确了这个模型是完全背包问题,我们再来确定初始状态,dp数组的初始状态,dp[0]应该是0,dp[1-m]都INF,原因是想用硬币更新其值,不然就是一个硬币都没有放入。(感觉类比求一个数组的最小值比较好理解这里的初始化INF的处理)

既然是求得最小价值,那么状态转移方程应该是dp[j]=min(dp[j-c[i]+w[i],dp[j]);

#include<bits/stdc++.h>
using namespace std;
#define INF 1e9
const int N=10005;
int dp[N];
int val[N];
int weight[505];int main()
{int n,m;while(scanf("%d%d",&n,&m)!=EOF){for(int i=1;i<=n;++i){scanf("%d%d,",&val[i],&weight[i]);   //读入每件物品的价值和重量}for(int i=1;i<=m;++i)dp[i]=INF;    //初始条件for(int i=1;i<=n;++i){for(int j=weight[i];j<=m;++j){dp[j]=min(dp[j-weight[i]]+val[i],dp[j]);  //转移状态方程}}if(dp[m]==INF)printf("impossible");elseprintf("%d\n",dp[m]);}return 0;
}

1079 PIPI的存钱罐相关推荐

  1. 1079: PIPI的存钱罐(完全背包)

    题目描述 PIPI有n种硬币,每种硬币有特定的重量wei[i] 克和它对应的价值val[i]. 已知有一个承重量为m的存钱罐,当里面正好装着重量为m的硬币时,问你这个存钱罐中硬币的最小价值是多少? 如 ...

  2. 1079: PIPI的存钱罐(动态规划)

    题目描述 PIPI有n种硬币,每种硬币有特定的重量cost[i] 克和它对应的价值val[i].  已知有一个承重量为m的存钱罐,里面正好装着重量为m的硬币,问你这个存钱罐中硬币的最小价值是多少? 如 ...

  3. PIPIOJ 1079: PIPI的存钱罐 完全背包

    题目: http://39.106.164.46/problem.php?id=1079 思路: 题目要求装满,然后又是完全背包.注意初始化时将dp初始化为INF,dp[0]=0即可. 代码如下: # ...

  4. scau 1079 三角形(暴力)

    </pre>1079 三角形</h1></center><p align="center" style="margin-top: ...

  5. PAT甲级1079 Total Sales of Supply Chain:[C++题解] 树、结点到根结点的距离、树形dp、记忆化搜索

    文章目录 题目分析 题目链接 题目分析 来源:acwing 分析:下图是对样例的模拟图示,题目就是统计叶子结点卖出去的钱数.根据下图,我们第一步是建树,第二步是统计叶子结点到根结点的距离,然后才能知道 ...

  6. usb管控软件_记账软件新外设:PUPUPULA 智能存钱罐登陆众筹

    小朋友的金钱观念需要从小开始培养.但为了方便记账而专门买一台手机又显得有些过头.有没有什么办法可以在培养金钱观念的同时又可以让家长轻松管控呢? 于是就有了这么一款 PUPUPULA 智能「存钱罐」. ...

  7. bzoj 1079 [SCOI2008]着色方案

    bzoj 1079 [SCOI2008]着色方案 Description 有n个木块排成一行,从左到右依次编号为1~n.你有k种颜色的油漆,其中第i种颜色的油漆足够涂ci个木块.所有油漆刚好足够涂满所 ...

  8. BZOJ 1079: [SCOI2008]着色方案 记忆化搜索

    1079: [SCOI2008]着色方案 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/p ...

  9. linux find 权限不够,超级用户find: `/home/pipi/.gvfs': 权限不够

    用sudo su命令切换成的根用户,在找某文件的时候报错: root@ubuntu:/home/pipi# find / -perm -2000 /sbin/unix_chkpwd find: `/h ...

最新文章

  1. 7个让你惊叹的HTML技巧
  2. EXT调用ASP.NET AJAX WebService
  3. SpringBoot启动流程分析(四):IoC容器的初始化过程
  4. Drools 7.4.1.Final参考手册(六) 用户手册
  5. 现代计算机应用特点,现代计算机的特点和计算机的发展
  6. linux-centos7环境搭建
  7. 【计算机科学基础】计算理论初步
  8. html5 注册协议弹出层,js制作带有遮罩弹出层实现登录注册表单特效代码分享
  9. linux sort多磁盘排序,linux shell sort多字段排序
  10. 计算机无法启动显示空格闪烁,我的电脑打不开怎么把硬盘格式化
  11. 4-2cglib 动态代理
  12. 手机usb计算机无法连接,手机用USB无法连接电脑怎么办
  13. 消息队列技术—获取JMS中文版和英文版API
  14. 什么是UML统一建模语言
  15. 创新未来,走进元宇宙,创造不可思议的数字体验!
  16. 相濡以沫,何能相忘于江湖
  17. Python写UTF8文件,UE、记事本打开依然乱码的问题
  18. 以太坊黄皮书翻译连载-1-20170828
  19. 九宫怎么排列和使用_广告视频配音剪映零基础入门教程第二十三篇:剪辑之九宫格教程...
  20. 基于脑机接口的光感知视觉机制模型

热门文章

  1. Kafka 核心源码解读【一】--日志模块
  2. 迈普路由器访问控制列表配置命令_迈普路由器常用使用功能讲解.ppt
  3. 计算机毕业设计Java微商后台管理系统(源码+系统+mysql数据库+Lw文档)
  4. python的Firebird驱动:FDB使用说明
  5. php和蝉知,蝉知getshell
  6. 文件下载下来是php格式怎么办?
  7. 人民币,大写中文与数字之间转换
  8. 阶乘-scratch2实现
  9. 如何通过晋升答辩?既升职又加薪!
  10. 移植FreeModbus