博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
蓝桥杯——说好的进阶之入学考试
阅读量:6908 次
发布时间:2019-06-27

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

问题描写叙述
  辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。

为此,他想拜附近最有威望的医师为师。

医师为了推断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,採每一株都须要一些时间。每一株也有它自身的价值。

我会给你一段时间,在这段时间里,你能够採到一些草药。

假设你是一个聪明的孩子,你应该能够让採到的草药的总价值最大。

  假设你是辰辰。你能完毕这个任务吗?

输入格式
  第一行有两个整数T(1 <= T <= 1000)和M(1 <= M <= 100)。用一个空格隔开,T代表总共可以用来採药的时间,M代表山洞里的草药的数目。接下来的M行每行包含两个在1到100之间(包含1和100)的整数。分别表示採摘某株草药的时间和这株草药的价值。
输出格式
  包括一行。这一行仅仅包括一个整数。表示在规定的时间内。能够採到的草药的最大总价值。

例子输入
70 3

71 100

69 1

1 2
例子输出
3
数据规模和约定
  对于30%的数据,M <= 10;
  对于所有的数据,M <= 100。
import java.util.Scanner;public class Main{	static int W ;	static int[] w_arr ;	static int[] p_arr ;	static int[][] v;	public static void main(String[] args) {		Scanner scanner=new Scanner(System.in);		String[] sarr=scanner.nextLine().split(" ");		W=Integer.parseInt(sarr[0]);		w_arr=new int[Integer.parseInt(sarr[1])];		p_arr=new int[w_arr.length];				for(int i=0;i
=w_arr[i];j--) { //b[j]= Math.max(b[j], b[j-w_arr[i]]+p_arr[i]); if(b[j-w_arr[i]]+p_arr[i]>b[j]) { b[j] =b[j-w_arr[i]]+p_arr[i]; } } } System.out.println(b[W]);//max }}

转载地址:http://mogdl.baihongyu.com/

你可能感兴趣的文章
webToImage (网页转图片)模块试用分享
查看>>
前端实用知识
查看>>
90. Subsets II
查看>>
前嗅ForeSpider教程:如何创建新任务
查看>>
大厂高级前端面试题答案
查看>>
javascript动态合并纵向单元格
查看>>
JavaScript 是如何工作的:模块的构建以及对应的打包工具
查看>>
Spring Boot 2.1.2 & Spring Cloud Greenwich 升级记录
查看>>
leetcode378. Kth Smallest Element in a Sorted Matrix
查看>>
DOM 元素中的焦点管理
查看>>
个人博客四|注册登录退出功能后台开发
查看>>
如何更优雅地切换Git分支
查看>>
Spring AOP(一) AOP基本概念
查看>>
Python之时间和日期使用小结
查看>>
XXL-RPC v1.3.2,分布式服务框架
查看>>
【React深入】setState的执行机制
查看>>
统一认证 - Apereo CAS 小试
查看>>
彻底搞清楚浏览器渲染过程
查看>>
Linux中用户管理
查看>>
搜索关键词分析——以个人博客网站为例
查看>>