文章

986

粉丝

5

获赞

20

访问

246.5k

头像
2025年(408)计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年12月12日 19:18
阅读数 181


评分及理由

(1)得分及理由(满分4分)

得分:4分

理由:学生的基本设计思想与标准答案一致。正确指出需要从后向前遍历,并记录从当前位置到末尾的最大值和最小值。根据A[i]的正负性,分别与最大值或最小值相乘得到res[i]。思路清晰完整,没有逻辑错误。

(2)得分及理由(满分7分)

得分:6分

理由:算法实现整体正确,但存在一处逻辑瑕疵。代码正确地初始化了max和min为最后一个元素,并设置了res[n-1]。循环从n-2开始,更新max和min的逻辑正确。然而,在处理A[i] <= 0的情况时,代码统一使用了`res[i] = A[i] * min;`,这忽略了A[i]等于0的情况。当A[i]=0时,无论乘以最大值还是最小值,结果都是0,所以算法结果正确,但逻辑上不够严谨。标准答案通过判断A[i] > 0来区分,隐含了A[i] <= 0时使用minValue。学生的代码将A[i] > 0和else分支对立,在A[i]=0时走入else分支,虽然结果正确(0 * min = 0),但分支的语义与设计思想中“A[i]为负数时乘最小值”的表述略有出入。考虑到结果正确且核心逻辑无误,此处扣1分。

(3)得分及理由(满分2分)

得分:2分

理由:学生正确分析了算法的时间复杂度为O(n),空间复杂度为O(1),与标准答案一致。

题目总分:4+6+2=12分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发