文章
50
粉丝
0
获赞
0
访问
967


评分及理由
(1)得分及理由(满分3分)
得分:3分
理由:学生的基本设计思想描述清晰,与标准答案中的方法二(同向多指针)思路一致。正确描述了从三个数组的第一个元素开始,计算距离后移动最小元素所在数组的指针,并在过程中更新最小距离的方法。
(2)得分及理由(满分8分)
得分:6分
理由:
- 算法整体框架正确,使用了三指针遍历三个数组,时间复杂度为O(n1+n2+n3)。(+6分)
- 但距离计算函数calandcmp中存在逻辑错误:题目要求的距离公式是D=|a-b|+|b-c|+|c-a|,而学生代码中使用了错误公式dis = 2*max(|a-b|,|a-c|,|b-c|)。这个公式在一般情况下不等于题目要求的距离,会导致计算结果错误。(-2分)
- 指针移动逻辑基本正确,但缺少对相等情况的处理,不过这不影响主要得分。
- 代码结构清晰,注释适当。
(3)得分及理由(满分2分)
得分:2分
理由:时间复杂度和空间复杂度的分析完全正确,时间复杂度为O(na+nb+nc),空间复杂度为O(1),与标准答案一致。
题目总分:3+6+2=11分
登录后发布评论
暂无评论,来抢沙发