zoukankan      html  css  js  c++  java
  • [TYVJ] P1005 采药

    采药

    背景 Background
    NOIP2005复赛普及组第三题
     
    描述 Description
    辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。” 如果你是辰辰,你能完成这个任务吗?
     
    输入格式 InputFormat
    输入文件medic.in的第一行有两个整数T(1 <= T <= 1000)和M(1 <= M <= 100),用一个空格隔开,T代表总共能够用来采药的时间,M代表山洞里的草药的数目。接下来的M行每行包括两个在1到100之间(包括1和100)的整数,分别表示采摘某株草药的时间和这株草药的价值。
     
    输出格式 OutputFormat
    输出文件medic.out包括一行,这一行只包含一个整数,表示在规定的时间内,可以采到的草药的最大总价值。
     
    样例输入 SampleInput [复制数据]

    70 3
    71 100
    69 1
    1 2

    样例输出 SampleOutput [复制数据]

    3

    数据范围和注释 Hint
    对于30%的数据,M <= 10;对于全部的数据,M <= 100。
     
    题解
     1 #include<stdio.h>
     2 int
     3 max(int a,int b)
     4 {
     5     if (a>b) return(a);
     6     else return(b);
     7 }
     8 
     9 int
    10 main(void)
    11 {
    12     int t,m,t1,m1,i,j,a[2000]={0};
    13     scanf("%d%d
    ",&t,&m);
    14     for (i=1;i<=m;i++)
    15     {
    16         scanf("%d%d",&t1,&m1);
    17         for (j=t;j>=t1;j--)
    18         a[j]=max(a[j],a[j-t1]+m1);
    19             
    20     }
    21     printf("%d
    ",a[t]);
    22     return 0;
    23 }    
  • 相关阅读:
    rest framework 认证 权限 频率
    rest framework 视图,路由
    rest framework 序列化
    10.3 Vue 路由系统
    10.4 Vue 父子传值
    10.2 Vue 环境安装
    10.1 ES6 的新增特性以及简单语法
    Django 跨域请求处理
    20190827 On Java8 第十四章 流式编程
    20190825 On Java8 第十三章 函数式编程
  • 原文地址:https://www.cnblogs.com/sxiszero/p/3590676.html
Copyright © 2011-2022 走看看