HDU 2061 Treasure the new start,…

来源:互联网 发布:辐射4 捏脸数据 编辑:程序博客网 时间:2024/06/07 00:00

http://acm.hdu.edu.cn/showproblem.php?pid=2061

 

Treasure the new start, freshmen!

TimeLimit: 1000/1000 MS(Java/Others)    MemoryLimit: 32768/32768 K (Java/Others)
Total Submission(s):5533    AcceptedSubmission(s): 1790


Problem Description
background:
A new semester comes , and the HDU also meets its 50th birthday. Nomatter what's your major, the only thing I want to tell youis:"Treasure the college life and seize the time." Most peoplethought that the college life should be colorful, less presure.Butin actual, the college life is also busy and rough. If you want tomaster the knowledge learned from the book, a great deal of leisuretime should be spend on individual study and practise, especiallyon the latter one. I think the every one of you should take thelearning attitude just as you have in senior school.
"No pain, No Gain", HDU also has scholarship, who can win it?That's mainly rely on the GPA(grade-point average) of the studenthad got. Now, I gonna tell you the rule, and your task is toprogram to caculate the GPA.
If there are K(K > 0) courses, the i-th course hasthe credit Ci, your score Si, then the result GPA is
GPA = (C1 * S1 + C2 * S2 +……+Ci * Si……) / (C1 + C2 + ……+ Ci……) (1<= i <= K, Ci != 0)
If there is a 0 <= Si < 60, The GPAis always not existed.
 

Input
The first number N indicate that thereare N test cases(N <= 50). In each case, there is anumber K (the total courses number), then K lines followed, eachline would obey the format: Course-Name (Length <=30) , Credits(<= 10), Score(<=100).
Notice: There is no blank in the Course Name. All the Inputs arelegal
 

Output
Output the GPA of each case as discribedabove, if the GPA is not existed, ouput:"Sorry!", else just outputthe GPA value which is rounded to the 2 digits after the decimalpoint. There is a blank line between two test cases.
 

Sample Input
2 3Algorithm 3 97 DataStruct 3 90 softwareProject 4 85 2 Database 4 59English 4 81
 

Sample Output
90.10Sorry!
 

Author
zl
 

Source
校庆杯Warm Up
 

Recommend
linle
 
题目大意:新的学期即将到来,也正逢杭州电子科技大学50周年校庆。无论你的专业是什么,我唯一要告诉那么的是:“珍惜大学的生活,利用好时间。” 很多人认为大学的生活回是丰富多采。但事实是,大学生活也同样忙碌。如果你要掌握书上的知识,你的空闲时间必须花在自学和实践上,尤其是实践。我认为,作为一位大学生,所有人都必须端正自己的学习态度。
“没有不劳而获的事情”,杭电也设立了奖学金,你能得到吗?它主要依据是学生获得的GPA(测评平均分)。现在,我将告诉你它的规则,你的任务就是编程计算GPA。
假如有K门课程,第i门课的学分为Ci,你的成绩为为Si,则GPA为:
GPA = (C1 * S1 + C2 * S2 +……+Ci * Si……) / (C1 + C2 + ……+ Ci……) (1 <= <= K, Ci != 0)
如果有一门课程成绩在0到60之间,则GPA将不存在。(翻译摘自 ______________白白の屋
分析:注意空行,按照公式计算GPA即可。
代码如下:
#include<stdio.h>
int main()
{
 int T,n,i;
 double c,s;
 double num1,num2,ans;
 bool flag;
 scanf("%d",&T);
 for(i=T;i>0;i--)
 {
  if(i!=T) printf("\n");
  flag=0;
    num1=num2=0;
  scanf("%d",&n);
  while(n--)
  {
  scanf("%*s%lf%lf",&c,&s);
  //printf("c=%lfs=%lf\n",c,s);
  if(s<60)
   flag=1; 
  num1+=(double)c*s;
  num2+=c;
  //printf("c=%d s=%d num1=%lfnum2=%lf\n",c,s,num1,num2);
  }
 if(flag==0)
 {
   ans=num1/num2;
  printf("%.2lf\n",ans); 
 }
 else
 printf("Sorry!\n");
  }
 return 0;
}
阅读全文
0 0
原创粉丝点击