hdoj 1114 Piggy-Bank(完全背包+dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114
思路分析:该问题要求为多重背包问题,使用多重背包的解法即可;假设dp[v]表示容量为v的背包中能够装下的最少的价值,因为一件物品可以装无限数次,所以可以得到递推公式: dp[v] = Min(dp[v], dp[v- c[i]] + w[i]);
代码如下:
import java.util.*;public class Main {static final int MAX_N = 10000 + 100;static final int MAX_INT = 100000000;static int[] w = new int[MAX_N];static int[] c = new int[MAX_N];static int[] dp = new int[MAX_N];public static int Min(int a, int b) {return a < b ? a : b;}public static void main(String[] args) {Scanner in = new Scanner(System.in);int case_times = in.nextInt();while (case_times-- != 0) {int v_pig, v_total, V, N;v_pig = in.nextInt();v_total = in.nextInt();N = in.nextInt();V = v_total - v_pig;Arrays.fill(dp, MAX_INT);dp[0] = 0;for (int i = 1; i <= N; ++ i){w[i] = in.nextInt();c[i] = in.nextInt();}for (int i = 1; i <= N; ++ i)for (int v = c[i]; v <= V; ++ v)dp[v] = Min(dp[v], dp[v - c[i]] + w[i]);if (dp[V] == MAX_INT)System.out.println("This is impossible.");elseSystem.out.println("The minimum amount of money in the piggy-bank is " + dp[V] + ".");}} }
转载于:https://www.cnblogs.com/tallisHe/p/4691432.html
hdoj 1114 Piggy-Bank(完全背包+dp)相关推荐
- piggy bank 完全背包
题目描述 Before ACM can do anything, a budget must be prepared and the necessary financial support obtai ...
- POJ1276 多重背包DP 生命不息优化不止
POJ1276 多重背包DP题 这道题弄了一个早上-一看题目是多重背包题直接敲了一个三重for循环,无限TLE,下面附上好几种解法. Description A Bank plans to insta ...
- 【LibreOJ】#6395. 「THUPC2018」城市地铁规划 / City 背包DP+Prufer序
[题目]#6395. 「THUPC2018」城市地铁规划 / City [题意]给定n个点要求构造一棵树,每个点的价值是一个关于点度的k次多项式,系数均为给定的\(a_0,...a_k\),求最大价值 ...
- 背包dp的核心思想(动态规划)
背包dp 突然发现我一直没有真正理解背包,真正的背包应该是用空间换时间的一种dp方法,本质上就是n个物品选或不选,理论上有2n2^n2n种可能结果,但是背包利用的就是值域很小这一特点来重叠子结构,所以 ...
- Codeforces 864E Fire(背包DP)
背包DP,决策的时候记一下 jc[i][j]=1 表示第i个物品容量为j的时候要选,输出方案的时候倒推就好了 #include<iostream> #include<cstdlib& ...
- 【bzoj4007】[JLOI2015]战争调度 暴力+树形背包dp
题目描述 给你一棵 $n$ 层的完全二叉树,每个节点可以染黑白两种颜色.对于每个叶子节点及其某个祖先节点,如果它们均为黑色则有一个贡献值,如果均为白色则有另一个贡献值.要求黑色的叶子节点数目不超过 $ ...
- HDU 1011 Starship Troopers 树形+背包dp
http://acm.hdu.edu.cn/showproblem.php?pid=1011 题意:每个节点有两个值bug和brain,当清扫该节点的所有bug时就得到brain值,只有当父节点被 ...
- 【bzoj1222】[HNOI2001]产品加工 背包dp
题目描述 某加工厂有A.B两台机器,来加工的产品可以由其中任何一台机器完成,或者两台机器共同完成.由于受到机器性能和产品特性的限制,不同的机器加工同一产品所需的时间会不同,若同时由两台机器共同进行加工 ...
- 【bzoj4753】[Jsoi2016]最佳团体 分数规划+树形背包dp
题目描述 JSOI信息学代表队一共有N名候选人,这些候选人从1到N编号.方便起见,JYY的编号是0号.每个候选人都由一位编号比他小的候选人Ri推荐.如果Ri=0则说明这个候选人是JYY自己看上的.为了 ...
- HDOJ 5087 Revenge of LIS II DP
HDOJ 5087 Revenge of LIS II DP DP的时候记录下能否够从两个位置转移过来. ... Revenge of LIS II Time Limit: 2000/1000 MS ...
最新文章
- CEO换人、IPO延期,比特大陆艰难转型路漫漫
- python excel 自动化-python自动化测试报告(excel篇)
- Linux入侵类问题排查思路
- 【Bapi】客户主数据快捷修改
- 数据结构与算法---笔记
- react --- Hook的使用
- 仿博客园个人博客(3)基本完成
- 联想高校AI精英挑战赛争霸浙江大学,“管道医生”项目晋级赛摘得桂冠
- Nginx之location详解
- python 字符串替换_python字符串替换的2种方法
- cad图纸批量转换pdf
- 用Python做一个美丽的每日计划
- 二、页面构成与色彩搭配
- flask Not Found The requested URL 20211207
- pytthon问题 pytcharm Automatic upload failed: could not resolve file “sftp://10.xx.xx.xx 【已解决】
- 固态硬盘是什么接口_了解移动固态硬盘接口知识,告诉你PSSD到底能多快
- # 转:手机触屏触摸特效javascript-TouchSwipe(依赖于jquery库)中文说明
- Word,Excel未保存,突然断电?找回死机后未储存的Word,Excel文件
- java继承extends
- WIN10桌面图标变成白文件的一种解决方法
热门文章
- c++快速读取配置文件
- Centos7没有ip地址
- 【Elasticsearch】腾讯Elasticsearch海量规模背后的内核优化剖析
- 95-10-055-启动-MetadataCache
- 【ES】ReceiveTimeoutTransportException request_id
- Spring Boot : 自定义 Starter
- 【Flink】did not rea ct to cancelling signal for 30 seconds, but is stuck No implementation was bound
- 【MySQL】MySQL EXPLAIN用法和结果
- 【Sentry】Sentry安装
- Linux系统中安装软件的三种方法(三)