NYOJ 106 背包问题

背包问题

时间限制: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。
输出
输出每组测试数据中背包内的物品的价值和,每次输出占一行。
样例输入
1
3 15
5 10
2 8
3 9
样例输出
65


/*动态规划求解*/
#include "stdio.h"
#define MAXN 10+2
int  map[MAXN][2];	//商品,单位价值(v) 与重量(w)int main()
{int n,result,s,m; //s表示物品个数,m表示能容纳的重量 ,10<=m<=20scanf("%d",&n);if(n<1) return 0;while(n--){result=0;scanf("%d %d",&s,&m); 	for(int i=0;i<s;i++){scanf("%d %d",&map[i][0],&map[i][1]);}int count=0;	//包装物品的重量 while(1){int index=-1,max_value=0;	//最大价值的物品 for(int i=0;i<s;i++){if(map[i][0]>max_value) { max_value=map[i][0]; index=i;		}}			if(count>=m || index==-1) break;	//不可再装包			if(m-count>=map[index][1]){count+=map[index][1];	result+=map[index][0]*map[index][1]; map[index][0]=0;	//没有物品价值为 0	}else{result+=(m-count)*map[index][0];	map[index][1]-=(m-count); break; //包装满 }									} printf("%d\n",result);	 		}return 0;
} 



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/374029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python数据挖掘与机器学习实战_Python数据挖掘与机器学习技术入门实战(1)

什么是数据挖掘?数据挖掘指的是对现有的一些数据进行相应的处理和分析&#xff0c;最终得到数据与数据之间深层次关系的一种技术。例如在对超市货品进行摆放时&#xff0c;牛奶到底是和面包摆放在一起销量更高&#xff0c;还是和其他商品摆在一起销量更高。作者&#xff1a;韦…

使用Spring 3.1和基于Java的配置构建RESTful Web服务,第2部分

1.概述 本文介绍了如何在Spring中设置REST –控制器和HTTP响应代码&#xff0c;有效负载编组配置和内容协商。 2.在Spring了解REST Spring框架支持两种创建RESTful服务的方式&#xff1a; 与ModelAndView一起使用MVC 使用HTTP消息转换器 ModelAndView方法较旧&#xff0c;文…

Vmware Player 比较

VMware Workstation 12 Player 与 VMware Player 7 Pro 比较 主要功能特性VMware Player 7 ProVMware Workstation 12 Player针对商业用途授予许可是是支持多达 16 个虚拟 CPU、8 TB 磁盘、64 GB RAM 和 2 GB 显存是是支持 Microsoft Windows 10、Ubuntu 15.04、RHEL 7.1、Fedo…

(转)求单链表是否有环,环入口和环长

转自&#xff1a;http://www.cnblogs.com/youxin/p/3303172.html 1.链表中是否有环的判断可以设置两个指针(fast,slow)&#xff0c;初始值均指向头&#xff0c;slow每次向前一步&#xff0c;fast每次向前两步&#xff1b;如果链表中有环&#xff0c;则fast先进入环中&#xff0…

OJ RuntimeError常见原因

RuntimeError常见出错的原因可能有以下几种&#xff1a; 1、数组开得太小了&#xff0c;导致访问到了不该访问的内存区域 2、发生除零错误 3、大数组定义在函数内,导致程序栈区耗尽 4、指针用错了&#xff0c;导致访问到不该访问的内存区域 5、还有可能是程序抛出了未接收…

python recv_Python socket.recv方法代码示例

# 需要导入模块: from gevent import socket [as 别名]# 或者: from gevent.socket import recv [as 别名]def handle(self):"""The main request handling method, called by the server.This method runs a request handling loop, calling:meth:handle_one_r…

使用Selenium或WebDriver测试GWT应用

对于Web应用程序开发人员及其团队而言&#xff0c;良好的功能测试是最困难的任务之一。 开发价格低廉且维护良好的测试是一项挑战&#xff0c;这有助于降低质量检查成本并提高质量。 Selenium和WebDriver&#xff08;本质上现在是Selenium的继承者&#xff09;都提供了一种无需…

MySQL中有关TIMESTAMP和DATETIME的总结

一、MySQL中如何表示当前时间&#xff1f; 其实&#xff0c;表达方式还是蛮多的&#xff0c;汇总如下&#xff1a; CURRENT_TIMESTAMP CURRENT_TIMESTAMP() NOW() LOCALTIME LOCALTIME() LOCALTIMESTAMP LOCALTIMESTAMP() 二、关于TIMESTAMP和DATETIME的比较 一个完整的日期格式…

NYOJ 202 红黑树

红黑树 时间限制&#xff1a;3000 ms | 内存限制&#xff1a;65535 KB难度&#xff1a;3描述 什么是红黑树呢&#xff1f;顾名思义&#xff0c;跟枣树类似&#xff0c;红黑树是一种叶子是黑色果子是红色的树。。。 当然&#xff0c;这个是我说的。。。 《算法导论》上可不是这么…

为对象添加方法mothod

Function.prototype.mothod function( name, fn ) { this.prototype[name] fn ; return this ; };转载于:https://www.cnblogs.com/40dadao/p/5816521.html

python爬虫cookie池 与ip绑定_Python爬虫:设置Cookie解决网站拦截并爬取蚂蚁短租

前言文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。作者&#xff1a; EastmountPS&#xff1a;如有需要Python学习资料的小伙伴可以加点击下方链接自行获取我们在编写Python爬虫时&#xff0c;有时会遇到…

Java Secret:加载和卸载静态字段

总览 首先&#xff0c;很自然地假设静态字段具有特殊的生命周期&#xff0c;并且在应用程序的生命周期中一直存在。 您可以假设它们存在于内存中的特殊位置&#xff0c;例如C或类元信息的perm gen中的内存开始。 但是&#xff0c;得知静态字段驻留在堆上&#xff0c;可以具有任…

HTTP协议详解(真的很经典)

转自&#xff1a;http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspx Author :Jeffrey 引言 HTTP是一个属于应用层的面向对象的协议&#xff0c;由于其简捷、快速的方式&#xff0c;适用于分布式超媒体信息系统。它于1990年…

NYOJ 63 小猴子下落

小猴子下落 时间限制&#xff1a;3000 ms | 内存限制&#xff1a;65535 KB难度&#xff1a;3描述 有一颗二叉树&#xff0c;最大深度为D,且所有叶子的深度都相同。所有结点从左到右从上到下的编号为1,2,3&#xff0c;&#xff0c;2的D次方减1。在结点1处放一个小猴子&#xff0…

python科学计算与图形渲染_宁哥Python科学计算与图形渲染库课程

50dccd474759c0ffd343efcac14f8ab2.png (259.41 KB, 下载次数: 0)2019-4-9 12:23 上传课程目录章节1: NumPy基础知识课时1NumPy简介14:05课时2搭建NumPy开发环境&#xff0c;验证NumPy开发环境17:08课时3源代码和数据下载章节2: NumPy数组课时4创建多维数组09:20课时5获取单个数…

http协议说明

今天公司有同事让我给他讲一讲http..然后自己写了一个示例代码,这如果都看不懂.那我也没办法了.... 1 <?php2 3 //这里服务器以apache举例.nginx.iis.他们实际上处理方式的都是同理4 //申明http链接的数据包 注意最后面有两个换号.这是告诉apache.数据包的结束,如果后面没…

JBoss模块示例–模块化Web应用程序

最近&#xff0c;我读了为什么没有标准来开发真正的模块化Web应用程序&#xff1f; 由Patroklos Papapetrou撰写&#xff08; 在Java Code Geeks中也有介绍 &#xff09;。 受本文的启发&#xff0c;我决定检查实际使用的JBoss模块 。 这篇文章逐步描述了我的实验。 我首先想到…

由MySql漏洞导致电脑被入侵(特征为新增加名为piress的帐户)

今天开机&#xff0c;突然发现新增了一个名为piress的账户&#xff0c;突然间就意识到我的电脑可能被入侵了。后来发现网上很多人都遇到这样的问题。经过一步步的查证&#xff0c;原来最近MySQL爆出一个安全漏洞&#xff0c;远程登录mysql&#xff0c;尝试225次后就可以绕过身份…

multiprocessing.manager管理的对象需要加锁吗_Go: 内存管理和分配

本文基于Go1.13当不再使用内存时&#xff0c;标准库会自动执行Go的内存管理即从分配到回收。尽管开发者不需要处理它&#xff0c;但是Go的底层管理进行了很好的优化并且充满了有趣的概念。堆上的分配内存管理被设计可以在并发环境快速执行并且集成了gc。让我们从一个例子开始&a…

NYOJ 35表达式求值

表达式求值 时间限制&#xff1a;3000 ms | 内存限制&#xff1a;65535 KB难度&#xff1a;4描述 ACM队的mdd想做一个计算器&#xff0c;但是&#xff0c;他要做的不仅仅是一计算一个AB的计算器&#xff0c;他想实现随便输入一个表达式都能求出它的值的计算器&#xff0c;现在请…