HDU 4968 Improving the GPA
Improving the GPA
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 652 Accepted Submission(s): 476
In fact, the AVERAGE SCORE of Xueba is calculated by the following formula:
AVERAGE SCORE = ∑(Wi * SCOREi) / ∑(Wi) 1<=i<=N
where SCOREi represents the scores of the ith course and Wi represents the credit of the corresponding course.
To simplify the problem, we assume that the credit of each course is
1. In this way, the AVERAGE SCORE is ∑(SCOREi) / N. In addition, SCOREi
are all integers between 60 and 100, and we guarantee that ∑(SCOREi) can
be divided by N.
In SYSU, the university usually uses the
AVERAGE SCORE as the standard to represent the students’ level. However,
when the students want to study further in foreign countries, other
universities will use the 4-Point Scale to represent the students’
level. There are 2 ways of transforming each score to 4-Point Scale.
Here is one of them.
The student’s average GPA in the 4-Point Scale is calculated as follows:GPA = ∑(GPAi) / N
So given one student’s AVERAGE SCORE and the number of the courses,
there are many different possible values in the 4-Point Scale. Please
calculate the minimum and maximum value of the GPA in the 4-Point Scale.
500), which denotes the number of test cases. The next T lines each
contain two integers AVGSCORE, N (60 <= AVGSCORE <= 100, 1 <= N
<= 10).
of the GPA in the 4-Point Scale in one line, accurate up to 4 decimal
places. There is a space between two values.
In the third case, there are many possible ways to calculate the minimum value of the GPA in the 4-Point Scale.
For example,
#include <cstdio> int T;
int AVGSCORE,N;
int sumscore;
int max_score,min_score;
double max_gpa,min_gpa; int main()
{
scanf("%d",&T);
while(T--){
scanf("%d%d",&AVGSCORE,&N);
sumscore = AVGSCORE*N;
max_gpa = -1.0;
min_gpa = 0x7fffffff;
for(int i = ; i <= N; ++i)
for(int j = ; j<= N-i; ++j)
for(int k = ; k <= N-i-j; ++k)
for(int l = ; l <= N-i-j-k; ++l){
int m = N-i-j-k-l;
max_score = *i+*j+*k+*l+*m;
min_score = *i+*j+*k+*l+*m;
if(sumscore <= max_score && sumscore >= min_score){
double gpa = 4.0*i+3.5*j+3.0*k+2.5*l+2.0*m;
if(gpa>max_gpa)
max_gpa = gpa;
if(gpa<min_gpa)
min_gpa = gpa;
}
}
max_gpa /= N;
min_gpa /= N;
printf("%.4f %.4f\n",min_gpa,max_gpa);
}
return ;
}
HDU 4968 Improving the GPA的更多相关文章
- HDU 4968 Improving the GPA(dp)
HDU 4968 Improving the GPA 题目链接 dp.最大最小分别dp一次,dp[i][j]表示第i个人,还有j分的情况,分数能够减掉60最为状态 代码: #include <c ...
- hdu 4968 Improving the GPA (水 暴力枚举)
题目链接 题意:给平均成绩和科目数,求可能的最大学分和最小学分. 分析: 枚举一下,可以达到复杂度可以达到10^4,我下面的代码是10^5,可以把最后一个循环撤掉. 刚开始以为枚举档次的话是5^10, ...
- hdu 4968 最大最小gpa
http://acm.hdu.edu.cn/showproblem.php?pid=4968 给定平均分和科目数量,要求保证及格的前提下,求平均绩点的最大值和最小值. dp[i][j]表示i个科目,总 ...
- HDU 4968(杭电多校#9 1009题)Improving the GPA (瞎搞)
题目地址:HDU 4968 这题的做法是全部学科的学分情况枚举,然后推断在这样的情况下是否会符合平均分. 直接暴力枚举就可以. 代码例如以下: #include <cstring> #in ...
- Improving the GPA 分类: 贪心 HDU 比赛 2015-08-08 16:12 11人阅读 评论(0) 收藏
Improving the GPA Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
- Improving the GPA(hdu4968)dfs
Improving the GPA Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
- HDU 4968 (水dp 其他?)
+;],dp1[][],dp2[][]; map< memset(GPA,, ;i<=;i++) hash[i]=; ;i<=;i++) hash[i]=; ...
- 2014 Multi-University Training Contest 9
官方解题报告:http://blog.sina.com.cn/s/blog_6bddecdc0102uzwm.html Boring Sum http://acm.hdu.edu.cn/showpro ...
- hdu 4802 GPA 水题
GPA Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=4802 Des ...
随机推荐
- MyBatis定义复合主键
<resultMap type="XX" id="XXMap"> <id property="id" column=& ...
- R语言编程艺术# 数据类型向量(vector)
R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用t ...
- 阿里云Ubuntu服务器安装java环境
一.下载jdk wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-secureb ...
- git初探
1 Linux下Git和GitHub环境的搭建 第一步: 安装Git,使用命令 "sudo apt-get install git" 第二步: 到GitHub上创建GitHub帐号 ...
- 读书笔记 (一) ———Fundamentals of Multiagent Systems with NetLogo Examples by Prof. Jose M Vidal
在网上发现Prof. Jose M Vidal用NetLogo仿真Multi-agent system的视频,随后下载他的著作Fundamentals of Multiagent Systems wi ...
- TDD 实践过程
聚合根是唯一能够允许充当进入聚合的逻辑途径的实体. 是唯一能够允许聚合外的对象持有的引用成员. 聚合根--决定数据库的入口,以为:
- c#做动态(gif)中文验证码
无意中在国外论坛发现一个gif动画类,我使用它来制作了一个动态验证码 : 一:首先新建一个类库 1:新建AnimatedGifEncoder类 using System; using System.C ...
- ECSHOP报错误Deprecated: preg_replace(): The /e modifier is depr
http://www.ecshoptemplate.com/article-1850.html
- PHP 怎么随机获取数组里面的值
注意array_rand随机返回的是KEY值的集合 <?php srand((float) microtime() * 10000000); $input = array("Neo&q ...
- jvisualvm 使用
和jconsole侧重于内存分析和检测不同,jvisualvm在线程分析方面更强大一些,下面简单介绍下使用: 1. 在要监控的java应用配置文件中,本例是apache-jmeter/bin/jmet ...