202308E 小粉兔还会忘记考试吗

· · 题解

Source & Knowledge

2023 年 08 月语言月赛,由洛谷网校入门计划/基础计划提供。

考察数组、循环。

文字题解

在本题中,为了计算旷考与不及格的科目数,我们需要维护一个数组 a,来保存每一门课程的最新成绩。

我们将课程代码保存在数组 E 中,第 i 门课程的课程代码为 E[i]。每一次录入课程代码与成绩后,我们先通过一次循环找到这个课程代码对应第 k 门课程,将 a[k] 赋值为新的成绩即可。

需要额外考虑的一个问题是,全局定义的数组,在开始时,默认值均为 0。我们需要区分 没有录入成绩而导致的初始值 0真的考了零分的 0。为了解决这个问题,我们可以将 a[1\sim N] 的初始值赋为 -1,这样,没有录入成绩,也就是旷考的科目就被区分出来了。

视频题解