文章

314

粉丝

1

获赞

107

访问

61.6k

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


评分及理由

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

得3分。学生的基本设计思想是使用三层循环遍历所有三元组,计算距离并保存最小值,然后再遍历一次输出最小距离对应的三元组。思路正确,虽然效率较低(暴力法),但符合题目要求“尽可能高效”的表述中可接受的解法(暴力法在考试中通常能拿到部分分数,且此处设计思想描述清晰)。

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

得6分。学生的代码实现了暴力法的核心逻辑,能够正确计算最小距离并输出所有对应三元组。但存在以下问题:
1. 函数未按照题目要求输出最小距离,而是直接输出三元组,题目要求“计算并输出所有可能的三元组中的最小距离”,代码缺少输出最小距离的语句(如printf("%d", min_d);),属于功能不完整,扣1分。
2. 代码中使用了未定义的宏MAX,应使用INT_MAX或足够大的数,属于小错误,扣1分。
3. 代码结构上进行了两次完整的三层循环,虽然逻辑正确,但效率较低,不过题目并未禁止暴力法,因此不额外扣分。
4. 函数abs_D实现了距离计算,正确无误。
综上,扣2分,得6分。

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

得2分。学生正确分析了时间复杂度为O(n³)(其中n为最大集合长度),空间复杂度为O(1),与暴力法一致,分析正确。

题目总分:3+6+2=11分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发