HDU 4968 Improving the GPA

题目链接

dp。最大最小分别dp一次,dp[i][j]表示第i个人,还有j分的情况,分数能够减掉60最为状态

代码:

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; int t, avg, n;
double dp1[15][405], dp2[15][405]; double get(int x) {
if (x >= 25 && x <= 40) return 4.0;
if (x >= 20 && x <= 24) return 3.5;
if (x >= 15 && x <= 19) return 3.0;
if (x >= 10 && x <= 14) return 2.5;
return 2.0;
} void init() {
for (int i = 1; i <= 400; i++)
dp2[0][i] = 50;
for (int i = 1; i <= 10; i++) {
for (int j = 0; j <= 400; j++) {
dp1[i][j] = 0;
dp2[i][j] = 50;
for (int k = 0; k <= j && k <= 40; k++) {
dp1[i][j] = max(dp1[i][j], dp1[i - 1][j - k] + get(k));
dp2[i][j] = min(dp2[i][j], dp2[i - 1][j - k] + get(k));
}
}
}
} int main() {
init();
scanf("%d", &t);
while (t--) {
scanf("%d%d", &avg, &n);
avg = (avg - 60) * n;
printf("%.4lf %.4lf\n", dp2[n][avg] / n, dp1[n][avg] / n);
}
return 0;
}

HDU 4968 Improving the GPA(dp)的更多相关文章

  1. HDU 1864 最大报销额(DP)

    题目网址:http://acm.hdu.edu.cn/showproblem.php?pid=1864 题目: 最大报销额 Time Limit: 1000/1000 MS (Java/Others) ...

  2. Improving the GPA(hdu4968)dfs

    Improving the GPA Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...

  3. HDU 2639 Bone Collector II (dp)

    题目链接 Problem Description The title of this problem is familiar,isn't it?yeah,if you had took part in ...

  4. HDU 4562 守护雅典娜(dp)

    守护雅典娜 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submi ...

  5. HDU - 6199 gems gems gems (DP)

    有n(2e4)个宝石两个人轮流从左侧取宝石,Alice先手,首轮取1个或2个宝石,如果上一轮取了k个宝石,则这一轮只能取k或k+1个宝石.一旦不能再取宝石就结束.双方都希望自己拿到的宝石数比对方尽可能 ...

  6. HDU 4968 Improving the GPA

    Improving the GPA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Othe ...

  7. HDU - 6357 Hills And Valleys(DP)

    http://acm.hdu.edu.cn/showproblem.php?pid=6357 题意 给一个数值范围为0-9的a数组,可以选择翻转一个区间,问非严格最长上升子序列,以及翻转的区间. 分析 ...

  8. 2014多校第四场1005 || HDU 4901 The Romantic Hero (DP)

    题目链接 题意 :给你一个数列,让你从中挑选一些数组成集合S,挑另外一些数组成集合T,要求是S中的每一个数在原序列中的下标要小于T中每一个数在原序列中下标.S中所有数按位异或后的值要与T中所有的数按位 ...

  9. hdu 5623 KK's Number(dp)

    问题描述 我们可爱的KK有一个有趣的数学游戏:这个游戏需要两个人,有N\left(1\leq N\leq 5*{10}^{4} \right)N(1≤N≤5∗10​4​​)个数,每次KK都会先拿数.每 ...

随机推荐

  1. hbase-0.94安装方法具体解释

    先决条件:     1)java环境,须要安装java1.6以上版本号     2)hadoop环境.因为HBase架构是基于其它文件存储系统的,因此在分布式模式下安装Hadoop是必须的,可是,假设 ...

  2. gravatar全球通用头像设定

    一:说明: gravatar的头像设定,可以用于wordpress,github等社区: 一次设定,全球同步显示: 目前gravatar已不支持注册,需要注册wordpress.com,然后登录: w ...

  3. Android自动填写获取到的验证码

    Android需要添加的相关权限 <uses-permission android:name="android.permission.RECEIVE_SMS">< ...

  4. js toSting方法实现

    function toString (val: any): string { return val == null ? '' : typeof val === 'object' ? JSON.stri ...

  5. Oracle查询备注信息

    查询表的备注信息: SELECT TABLE_NAME, TABLE_TYPE, COMMENTS FROM USER_TAB_COMMENTS WHERE TABLE_NAME = 'MR_DEPT ...

  6. 减小App包的大小

    检查.ipa文件 首先获得app的ipa文件. 将ipa文件的后缀改为.zip,解压得到包内容. 查看资源文件哪个最大.然后试着对最大的文件即可处理 图片 尽量使用8-bit图片 使用8-bit的PN ...

  7. Linux应用小技巧

    简介 本文针对Linux操作过程中提升工作效率问题,给出常见操作技巧,主要从Linux终端管理.显示git分支.终端快速检索历史命令等方面进行介绍. 本文内容主要以Ubuntu系统为例进行介绍. Li ...

  8. CentOS安装配置Samba

    介绍 Samba可以让我们在windows中访问linux系统中的文件,如果用来调试linux虚拟机中的代码会非常的方便 1.安装 yum -y update yum install samba sa ...

  9. Nginx日志分析利器之GoAccess

    1.介绍GoAccess 是一个用来统计 Apache Web 服务器的访问日志的工具,可即时生成统计报表,速度非常快 查看的统计信息有: 统计概况,流量消耗等 访客排名 动态Web请求 静态web请 ...

  10. 简单易懂的Ubuntu生存战略:开启无线网卡的wifi热点,ap模式

    在ubuntu下如何把无线网卡设置成可供wifi设备上网的接入点 因为某些移动设备对wifi热点的要求有些苛刻,p2p模式的无线连接方式虽然易设置,但是实用性不高. 相对而言,创建一个虚拟无线路由器成 ...