FZU Problem 2214 Knapsack problem(背包+思维转换)
2024-08-25 02:23:52
转化思维,把价值当成背包容量,选择最小的花费,从上到下枚举,找到当这个最小的花费.
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int main()
{
int dp[],t,b,w[],v[],n;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&n,&b);
int all = ;
for(int i = ;i < n;i++)
{
scanf("%d%d",&w[i],&v[i]);
all += v[i];
}
memset(dp,0x3f,sizeof(dp));
dp[] = ;
for(int i = ;i < n;i++)
{
if(all >= v[i])
for(int j = all;j >= v[i];j--)
dp[j] = min(dp[j],dp[j-v[i]] + w[i]);
}
int ans = ;
for(int i = all;i >= ;i--)
{
if(dp[i] <= b)
{
ans = i;
break;
}
}
printf("%d\n",ans);
}
return ;
}
最新文章
- Github上关于iOS的各种开源项目集合(强烈建议大家收藏,查看,总有一款你需要)
- HDU 1005 F(Contest #1)
- 2012年";浪潮杯";山东省第三届ACM大学生程序设计竞赛--n a^o7 ! 分类: 比赛 2015-06-09 17:16 14人阅读 评论(0) 收藏
- jquery easyUi 配置默认页码
- angular指令系列---多行文本框自动高度
- 正则语言引擎:一个简单LEX和YACC结合运用的实例
- .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用
- Django缓存和内置信号
- kubernetes云平台管理实战: 服务发现和负载均衡(五)
- String常用类
- DVR登录绕过漏洞(CVE-2018-9995)
- 什么是arp协议?
- 现代编译原理--第六章(中间树 IR Tree 含源码)
- Oracle 聚合函数
- Spring boot异常统一处理方法:@ControllerAdvice注解的使用、全局异常捕获、自定义异常捕获
- suggest braces around empty body in an &#39;if&#39; statement
- JDK5.0特性-线程 Callable和Future
- L142
- Python与Mysql交互
- httpd访问网络配置httpd_can_network_connect