AOJ 718.计算GPA

Time Limit: 1000 ms   Case Time Limit: 1000 ms   Memory Limit: 128 MB
Total Submission: 72   Submission Accepted: 32

Description

上学期面对繁重的课程和考试,TYF终于考完了。成绩出来之后,TYF想看一下GPA(Grade Point Average,平均成绩点数)是多少,之后他熟练的打开了教务处,看到绩点显示0.00,他丝毫没有感到吃惊,他知道教务处又出现问题了。之后TYF决定自己写一个程序来计算自己的GPA。想必大家都知道GPA如何计算的,就是加权平均数。计算方式如下:
例如某学生的五门课程的学分和他所获得的绩点为:
A课程四个学分,绩点4;
B课程三个学分,绩点3;
C课程两个学分,绩点4;
D课程六个学分,绩点2;
E课程三个学分,绩点3。
以上五项成绩GPA为:
GPA=(4*4+3*3+2*4+6*2+3*3)/(4+3+2+6+3)=3.00
现在让你帮助TYF完成这项任务。

Input

多组输入,EOF结束
对于每组输入,第一行一个整数n (1<=n<=40),表示课程的数目。
接下来n行,每行两个数,一个整数ai(1<=ai<=10)表示一门课的学分,一个浮点数bi(0<=bi<=4.00),表示一门课的绩点。

Output

对于每组输入,输出一行, 为平均成绩点数(保留两位小数)。

Sample Input

Original Transformed
5
4 4.0
3 3.0
2 4.0
6 2.0
3 3.0

Sample Output

Original Transformed
3.00

按照公式计算即可

 1 /*
 2 By:OhYee
 3 Github:OhYee
 4 Email:[email protected]
 5 */
 6 #include <cstdio>
 7 #include <algorithm>
 8 #include <cstring>
 9 #include <cmath>
10 #include <string>
11 #include <iostream>
12 #include <vector>
13 #include <list>
14 #include <stack>
15 using namespace std;
16
17 #define REP(n) for(int o=0;o<n;o++)
18
19 int main() {
20     int n;
21     while(scanf("%d",&n) != EOF) {
22         double ans1 = 0,ans2 = 0;
23         double a,b;
24         REP(n) {
25             scanf("%lf%lf",&a,&b);
26             ans1 += a*b;
27             ans2 += a;
28         }
29         printf("%.2f\n",ans2 != 0 ? ans1 / ans2 : 0);
30     }
31     return 0;
32 }
时间: 2024-11-10 01:01:35

AOJ 718.计算GPA的相关文章

(HDU)1202 -- The calculation of GPA (计算GPA)

题目:http://vjudge.net/problem/HDU-1202 分析:这题好坑爹啊,80 - 89 4点,让人情不自禁设置成80<=i<=89,那么89.5算不算呢?还有就是全部缺考的情况也需要考虑,除法要有意义. 1 #include <cstdio> 2 #include <cstring> 3 #include <cmath> 4 #include <iostream> 5 #include <algorithm>

计算GPA

#include <stdio.h> int main() { int n,t,i; float sum,s,p,m,k; while(~scanf("%d",&n)) { sum=0.0; m=0.0; for(i=1;i<=n;i++) { scanf("%f %f",&s,&p); if(p>=90) t=4; else if(p>=80) t=3; else if(p>=70) t=2; else

The calculation of GPA

Problem Description 每学期的期末,大家都会忙于计算自己的平均成绩,这个成绩对于评奖学金是直接有关的.国外大学都是计算GPA(grade point average) 又称GPR(grade point ratio),即成绩点数与学分的加权平均值来代表一个学生的成绩的.那么如何来计算GPA呢? 一般大学采用之计分法 A90 - 100 4 点 B80 - 89 3 点 C70 - 79 2 点 D60 - 69 1 点 E0 - 59 0 点 例如:某位学生修习三门课,其课目.

1411052107-hd-The calculation of GPA

 The calculation of GPA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 19932    Accepted Submission(s): 4576 Problem Description 每学期的期末,大家都会忙于计算自己的平均成绩,这个成绩对于评奖学金是直接有关的.国外大学都是计算GPA(grade poi

HDU1202 The calculation of GPA

The calculation of GPA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 19000    Accepted Submission(s): 4391 Problem Description 每学期的期末,大家都会忙于计算自己的平均成绩,这个成绩对于评奖学金是直接有关的.国外大学都是计算GPA(grade point

HDU-1202-The calculation of GPA(恶心水题)

The calculation of GPA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 21967    Accepted Submission(s): 5046 Problem Description 每学期的期末,大家都会忙于计算自己的平均成绩,这个成绩对于评奖学金是直接有关的.国外大学都是计算GPA(grade point

hdu 4406 GPA 最大费用最大流

题意:给定n,k,m分别代表天数,每天上的课,以及科目数. 给定每门课的学分,已经基础分数. 给定n天每天有哪些课能学. 求如何安排复习,使得GPA尽可能大且没有挂科,算出GPA. 思路:最大费用最大流.定义函数f(score,credit)=credit×(4-3.0/1600×(100-score)^2).每一天向汇点连边,容量为k,费用0;  每门课 与每天根据是否在当天能上连边,容量为k,费用为0; 源点向每门课连边,若基础分score小于60,则与源点连一条流量60-score.费用

杭电 HDU 1202 The calculation of GPA

The calculation of GPA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 21897    Accepted Submission(s): 5028 Problem Description 每学期的期末,大家都会忙于计算自己的平均成绩,这个成绩对于评奖学金是直接有关的.国外大学都是计算GPA(grade point

hdu 1202The calculation of GPA (简单题+坑)

The calculation of GPA Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 18748    Accepted Submission(s): 4331 Problem Description 每学期的期末,大家都会忙于计算自己的平均成绩,这个成绩对于评奖学金是直接有关的.国外大学都是计算GPA(grade point a