zoukankan      html  css  js  c++  java
  • 洛谷P2722 总分 Score Inflation

     

    题目背景

    学生在山大附中的月考中的得分越少,老师越高兴。

    老师们试着把月考卷里塞满各科竞赛题,以此减少学生得到的分数。

    学生看到卷子一脸懵逼,一部分选择了死亡,另一部分人试图挣扎,他们纵观全卷,分析了每一道题需要的时间和理想情况的得分,现在他们试图找出在限定时间内能得到的最多分数。

    题目描述

    我们可以从几个种类中选取竞赛的题目,这里的一个"种类"是指一个竞赛题目的集合,解决集合中的题目需要相同多的时间并且能得到相同的分数。你的任务是写一个程序,判断应该从每一个种类中选取多少题目,使得解决题目的总耗时在竞赛规定的时间里并且总分最大。输入包括竞赛的时间,M(1 <= M <= 10,000)(不要担心,你要到了高三才会有长时间的比赛)和N,"种类"的数目1 <= N <= 10,000。后面的每一行将包括两个整数来描述一个"种类":

    第一个整数说明解决这种题目能得的分数(1 <= points <= 10000),第二整数说明解决这种题目所需的时间(1 <= minutes <= 10000)。

    你的程序应该确定我们应该从每个"种类"中选多少道题目使得能在竞赛的时间中得到最大的分数。

    来自任意的"种类"的题目数目可能是任何非负数(0或更多)。

    计算可能得到的最大分数。

    输入输出格式

    输入格式:

    第 1 行: M, N--竞赛的时间和题目"种类"的数目。

    第 2-N+1 行: 两个整数:每个"种类"题目的分数和耗时。

    输出格式:

    单独的一行包括那个在给定的限制里可能得到的最大的分数。

    输入输出样例

    输入样例#1:
    300 4
    100 60
    250 120
    120 100
    35 20
    输出样例#1:
    605

    说明

    题目翻译来自NOCOW。

    USACO Training Section 3.1

    完全的完全背包

     1 /*by SilverN*/
     2 #include<algorithm>
     3 #include<iostream>
     4 #include<cstring>
     5 #include<cstdio>
     6 #include<cmath>
     7 using namespace std;
     8 const int mxn=10010;
     9 int w[mxn];
    10 int v[mxn];
    11 int f[mxn];
    12 int n,m;
    13 int main(){
    14     scanf("%d%d",&m,&n);
    15     int i,j;
    16     for(i=1;i<=n;i++)
    17         scanf("%d%d",&v[i],&w[i]);
    18     for(i=1;i<=n;i++){
    19         for(j=w[i];j<=m;j++){
    20             f[j]=max(f[j],f[j-w[i]]+v[i]);
    21         }
    22     }
    23     int ans=0;
    24     for(i=1;i<=m;i++)ans=max(ans,f[i]);
    25     printf("%d
    ",ans);
    26     return 0;
    27 }
  • 相关阅读:
    C++类型前置声明
    Qt 引用头文件 QT_BEGIN_NAMESPACE QT_END_NAMESPACE
    Qt emit的使用
    特定于类的内存管理---《C++必知必会》 条款36
    C++深入理解虚函数
    使用网页预加载顶部进度条
    简单读取 properties文件
    win2012r2 关闭中英文悬浮小方框显示
    bootstrap的Alerts中 可以放置p标签 设置 align="center" 用来设置文本居中
    char和String 在jsp java代码中与jstl代码中的区别
  • 原文地址:https://www.cnblogs.com/SilverNebula/p/5872405.html
Copyright © 2011-2022 走看看