问题 1102 --按绩点排名

1102: 按绩点排名★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 208  解决: 44
[提交][状态][命题人:]

题目描述

有一些班级的学生需要按绩点计算并排名。 每门课程的成绩只有在60分以上(含),才予以计算绩点。课程绩点的计算公式为: (课程成绩 – 50)÷10×学分数 一个学生的总绩点为其所有课程绩点总和除以10。

输入

输入数据中含有一些班级(≤20)。 每个班级的第一行数据n(≤10),a1,a2,a3,…,an,表示该班级共有n门课程,每门课程的学分分别为a1,a2,a3,…,an; 班级数据中的第二行数据为一个整数m(≤50),表示本班级有m个学生; 班级数据接下去有m行对应m个学生数据; 每行学生数据中的第一个为字串s1(s1中间没有空格),表示学生姓名,后面跟有n个整数s1,s2,s3,…,sn,表示该学生各门课程的成绩(0≤si≤100)。

输出

以班级为单位输出各个学生按绩点分从大到小的排名。如果绩点分相同,则按学生名字的ASCII串值从小到大排名。 每个班级的排名输出之前应先给出一行,描述班级序号“class #:”(#表示班级序号),班级之间应空出一行。 排名时,每个学生占一行,列出名字和总绩点。学生输出宽度为10个字符,左对齐,在空出一格后列出总绩点。
样例输入
Copy
1
3 3 4 3
3
zhangsan   89 62 71
smith          98 50 80
wangwu     67 88 91
样例输出
Copy
class 1:
wangwu     3.26
smith          2.34
zhangsan   2.28

提示

来源

qn 

[提交][状态]