小v用C++获得了奖学金
发布时间
阅读量:
阅读量
问题描述
小v今年需修读n门课程(编号为0至n-1),每门课程均设有考试。为了获得奖学金,小v必须确保所有课程的平均成绩不低于avg。每门课程的最终成绩由平时成绩与考试成绩相加得出,总分为r。现已知每门课程当前的平均成绩为ai(0≤i≤n-1),若希望将该课程的成绩提高一分,小v需要投入bi的时间进行复习;若不进行复习,则无需花费时间。此外,也有可能出现即使增加复习时间,成绩也无法超过满分的情况。为了达到奖学金的要求,小v最少需要投入多少时间?
输入描述
每个测试用例的首行输入为一个整数n(1≤n≤200),用于表示课程的数量。随后的n行中,每行包含两个整数,分别对应某一门课程的平均成绩ai与bi。在所有数据输入完毕后,还需输入两个数值,即满分r和期望达到的平均成绩avg。当输入的n值等于0时,表示整个输入过程结束。
输出描述
对于每一个测试用例,均需输出一行数据,用以体现小v所需消耗的最短复习时长。
输入样例解析
4
80 5
70 2
90 3
60 1
100 92.5
0
输出样例
100
算法思路
这道题目的解题思路较为直接,由于各科分数提升所需时间存在差异,因此应优先将提升速度较快的科目提升至满分,随后再着手处理次之的科目。当所有科目的平均分达到预设目标时,即可停止操作。其
全部评论 (0)
还没有任何评论哟~
