score_freq 是一张频数表:每行表示某科目中分数为 score 的人有 freq 个。求每个科目的中位数。
- 把频数展开成逐人的分数列表后求中位数:总人数 N 为奇数时取排序后正中间的那个分数;N 为偶数时取正中间两个分数的算术平均(两个分数可能不同,也可能相同)。
- 同一科目里同一个
score可能出现在多行,频数要合并;freq = 0的行表示没有人,不参与计算。 - 每个科目的总频数至少为 1。
freq是非负整数,score是整数,可能为负。 - 输入行没有按分数排序。
输入
score_freq(subject, score, freq)
输出
列为 subject, median,median 为浮点数,不舍入。每个科目一行,行顺序不限。