[Home|Training|Problems|Contests|C Language] | [Login|Register] |
Problems Status Rank Statistics |
Problem B
GPA
Time Limit: 1000ms
Memory Limit: 65536kb Description
科大的学生都很重视GPA,所以我们来编写一个成绩管理系统吧~大多数高校都使用平均成绩绩点(Grade Point Average, 简称GPA)来评估学生成绩。科大的百分制成绩与绩点的对应关系如下:
一个学生的平均分为各门课程百分制成绩的加权平均值: 同样地,平均成绩绩点为各门课程绩点的加权平均值: 请编写一个成绩管理系统处理成绩的录入、计算和查询等操作。 Input
输入数据只有一组。第一行包括三个整数:学生总数n (1≤n≤500),课程总数m (1≤m≤500),操作总数q (1≤q≤100000) 接下来的n行每行为一个仅包含字母和数字的字符串,表示各个学生的学号。 接下来的m行每行为一个仅包含字母和数字的字符串,表示各个课程的编号;以及一个正整数,表示该课程的学分。 最后q行每行描述一次操作。各操作的格式和功能如下:
学号和课程编号长度不超过10个字符。 Output
对于操作student, course和query,按照上述描述输出。输入输出具体格式请参阅输入输出样例。
Sample Input
5 3 10 PB09123456 PB09654321 SA09123456 SA09654321 PB07010101 ABCDEFGHIJ 1 0123456789 2 0101010101 2 score PB09123456 0101010101 64 score PB09123456 0123456789 100 query PB09123456 0101010101 score SA09654321 0101010101 90 student PB09123456 course 0101010101 student PB07010101 course ABCDEFGHIJ score PB09654321 0101010101 85 course 0101010101 Sample Output
64 1.50 82.00 2.90 77.00 0.00 0.00 0.00 79.67 Hint
请尽可能地优化你的程序,否则难以在规定时间内完成所有操作。C语言可以用printf(“%.2lf\n”,s);四舍五入到小数点后两位输出double类型。 |