博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
南阳106--背包问题
阅读量:7186 次
发布时间:2019-06-29

本文共 1007 字,大约阅读时间需要 3 分钟。

背包问题

时间限制:
3000 ms  |  内存限制:65535 KB
难度:
3
 
描述
现在有很多物品(它们是可以分割的),我们知道它们每个物品的单位重量的价值v和重量w(1<=v,w<=10);如果给你一个背包它能容纳的重量为m(10<=m<=20),你所要做的就是把物品装到背包里,使背包里的物品的价值总和最大。
 
输入
第一行输入一个正整数n(1<=n<=5),表示有n组测试数据;
随后有n测试数据,每组测试数据的第一行有两个正整数s,m(1<=s<=10);s表示有s个物品。接下来的s行每行有两个正整数v,w。
输出
输出每组测试数据中背包内的物品的价值和,每次输出占一行。
样例输入
13 155 102 83 9
样例输出
65
来源
上传者
1 #include 
2 #include
3 using namespace std; 4 5 struct ac 6 { 7 int a, b; 8 } num[15]; 9 10 bool cmp(ac a, ac b)11 {12 return a.a > b.a;13 } 14 15 int main()16 {17 int t;18 scanf("%d", &t);19 while(t--)20 {21 int n, m;22 scanf("%d %d", &n, &m);23 for(int i=0; i
m) 32 {33 total -= (sum - m) * num[i].a;34 break;35 }36 if(sum == m)37 break;38 }39 printf("%d\n", total);40 }41 return 0;42 }

 

转载于:https://www.cnblogs.com/soTired/p/4693366.html

你可能感兴趣的文章
【转】C语言中access函数
查看>>
Journal List
查看>>
JavaScript-构造函数模式
查看>>
浅试 Webview 一app 加载 H5小游戏
查看>>
谈谈OpenNI 2初体验
查看>>
stars
查看>>
Boosting决策树:GBDT
查看>>
投影矩阵
查看>>
微软职位内部推荐-Senior Software Engineer II-Search
查看>>
如何使用JCONSOLE 监控eclipse的tomcat
查看>>
SpringBoot+Maven多模块项目(创建、依赖、打包可执行jar包部署测试)完整流程
查看>>
Caused by: java.sql.SQLException: Field 'id' doesn't have a default value
查看>>
gitHub上如何设置或者取消电子邮箱提醒
查看>>
VC++2005快速构建安全的应用程序
查看>>
常用SQL整理
查看>>
Node.js笔记 - 安装express
查看>>
hybris安装B2B
查看>>
boot中 Quartz注入spring管理类失败
查看>>
性能,不是不重要,而是,它没有可维护性重要
查看>>
STP的作用和操作
查看>>