牛客网–采药(01背包)

牛客网–采药(01背包)

输入描述:
输入的第一行有两个整数T(1 <= T <= 1000)和M(1 <= M <= 100),T代表总共能够用来采药的时间,M代表山洞里的草药的数目。
接下来的M行每行包括两个在1到100之间(包括1和100)的的整数,分别表示采摘某株草药的时间和这株草药的价值。
输出描述:
可能有多组测试数据,对于每组数据,
输出只包括一行,这一行只包含一个整数,表示在规定的时间内,可以采到的草药的最大总价值。

//01背包
#include<bits/stdc++.h>
using namespace std;

struct hert{

int time;
int value;
}hert[101];

int dp[1001];//T时间所得价值

int max(int i,int j){ return (i>j)?i:j;}

int main(){

int m,t;
int time[100];
int price[100];
while(cin>>t>>m){

for(int i=1;i<=m;i++){

cin>>hert[i].time>>hert[i].value;
}
for(int i=1;i<=t;i++){

dp[i]=0;
}
for(int i=1;i<=m;i++){//药草种类
for(int j=t;j>=hert[i].time;j–){//时间(限制因素)
dp[j]=max(dp[j],dp[j-hert[i].time]+hert[i].value);
}
}
cout<<dp[t]<<endl;
}
return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100207.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python interpolate.interp1d,Python interp1d与UnivariateSpline

    python interpolate.interp1d,Python interp1d与UnivariateSplineI’mtryingtoportsomeMatLabcodeovertoScipy,andI’vetriedtwodifferentfunctionsfromscipy.interpolate,interp1dandUnivariateSpline.Theinterp1dresultsmatchtheinterp1dMatLabfunctio…

    2022年6月11日
    30
  • DAVINCI DM365-DM368开发攻略——开发环境搭建(DVSDK4.02) 适用于DM3730[通俗易懂]

    DAVINCI DM365-DM368开发攻略——开发环境搭建(DVSDK4.02) 适用于DM3730[通俗易懂]DAVINCIDM365-DM368开发攻略——开发环境搭建(DVSDK4.02)标签:开发环境 搭建 dvsdk DM368 DM365原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zjbintsystem.blog.51cto.com/964211/621435第一节、 技术开发环

    2022年8月13日
    4
  • C++实现学生选课管理系统

    C++实现学生选课管理系统这是主函数逻辑部分#include<iostream>#include”class.h”#include”student.h”usingnamespacestd;intmain(){ courseA; studentB[10];//10个学生 intstucnt=0; intdengluflag=-1;…

    2022年10月16日
    2
  • matlab从小到大的冒泡排序_matlab比较两个数大小

    matlab从小到大的冒泡排序_matlab比较两个数大小[1,2,3];%冒泡法排序,注意的是特征值顺序变化的同时要与相对应的下标同…转换完之后对向量进行逆序排列,我看到有同学硬是写了一个冒泡排序来完成这个工作,你的数据结构老师一定非常欣慰。但是在MATLAB里不用从头开始,直接调用sort……3.实现对输入任意长度向量元素的冒泡排序的升序排列。不允许使用sort函数…三分搜索法hdu1016PrimeRi…

    2022年10月18日
    3
  • curl的速度为什么比file_get_contents快以及具体原因

    curl的速度为什么比file_get_contents快以及具体原因

    2022年2月10日
    52
  • git如何退出vim_git提交的命令

    git如何退出vim_git提交的命令有很多方法:退出Vi当编辑完文件,准备退出Vi返回到shell时,可以使用以下几种方法之一。在命令模式中,连按两次大写字母Z,若当前编辑的文件曾被修改过,则Vi保存该文件后退出,返回到shell;若当前编辑的文件没被修改过,则Vi直接退出,返回到shell。在末行模式下,输入命令:wVi保存当前编辑文件,但并不退出,而是继续等待用户输入命令。在使用

    2022年8月24日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号