用了近一个月的AI刷题,我想记录一下使用AI刷题的实践记录以及工具使用,即青训营伴学笔记中的方向三。
在这篇笔记中,我将先谈谈AI刷题功能的亮点,然后分享一个我在使用豆包MarsCode AI刷题时真实的经历(记录在完成《小C的外卖超时判断》这道题时发生的故事)。
一、AI刷题的功能亮点
1. 精选真题:让学习更贴近考试
AI刷题平台通常会为用户提供精选真题,这些真题来自于历年的考试或权威测试,具备高度的真实性和实战性。真题的最大特点是能模拟考试环境,帮助我们了解真实的考试内容和题型,避免低级错误的发生。
功能亮点:
- 真实场景模拟:精选的真题能够帮助我们适应真实考试的题目类型、难度以及解题思路。这对于备考过程中的信心建立和心理准备极为重要。
- 练习后反馈:完成真题后,AI能够实时给出详细的解析,并指出我们的答题弱点,提供针对性的改进方案。
- 多维度分析:AI还会基于解题数据进行统计,分析每道题的正确率,帮助我们识别哪些知识点掌握得不牢,进而进行更精细化的复习。
实践体验: 在刷题过程中,我常常选择AI平台提供的精选真题进行练习。在每次做完题目后,AI会立刻根据我的答案给出详细的解析,并指出我的错误原因。这种及时反馈使得我能够在做题的过程中不断发现自己的盲点并加以改正。
2. 云端编辑器:便捷的在线学习工具
云端编辑器是AI刷题平台中的一项创新功能,用户可以在平台上直接完成题目,随时查看并编辑自己的解答。这一功能使得刷题不仅仅是一个单纯的答题过程,它还成为了一个随时可以记录和反思的学习过程。顺带一提的是,不用配置复杂的环境,上手就可以编程的东西,谁能不爱呢?(有自己配置过编程环境的同学应该深有体会。。。)
功能亮点:
- 随时随地学习:无需下载或安装任何额外的应用,用户只需要在平台上就能进行题目编辑和答题。这意味着无论身处何地,只要有网络连接,用户都可以进行刷题练习。
- 自动保存进度:云端编辑器可以自动保存用户的解答进度,避免因为设备故障或其他原因丢失已做的题目。用户可以随时查看过去的题目,进行错题复盘。
- 便捷的题目切换:云端编辑器支持多种题型和格式的编辑,用户在解答过程中可以根据需要随时调整并切换题目,提升学习的灵活性。
实践体验: 在一次模拟考试中,我使用了AI刷题平台的云端编辑器进行答题。整个过程非常流畅,题目内容和答案都能即时保存,而且在完成每一组题目后,我都能够快速查看自己的错题并进行修改。没有任何时间限制的压力,也让我能更专注于题目内容本身。
3. 个性化题目推荐:精准提升学习效果
AI的个性化题目推荐功能是刷题平台的一大亮点。它根据用户的刷题记录和薄弱点,通过机器学习算法为用户推荐最适合的题目。这样不仅节省了用户自行选择题目的时间,还能最大化地提升学习效率。
功能亮点:
- 个性化定制:AI通过对用户的题目解答数据进行分析,了解其在不同知识点上的掌握情况。基于这些数据,系统会为每个用户量身定制适合的题目推荐。
- 难度适配:AI能够根据用户的水平逐步调整题目的难度,既不会让用户感到过于简单,也不会过于困难,始终保持一个适合自己的学习曲线(主要是在豆包MarsCode AI刷题的平台上可以选择难度,有简单、中等、困难三个等级的选项,对于像我这种新手小白直接选择简单就好,十分的快捷方便)。
- 动态调整:随着用户答题水平的提升,推荐的题目难度也会逐渐增加,确保学习过程中的不断挑战与进步。
实践体验: 在使用AI刷题时,我注意到推荐的题目总是能够很好地匹配我的学习进度。初期,系统会推荐一些基础题目帮助我打好基础,随着学习的深入,推荐的题目逐渐难度增加,帮助我逐步突破自己的瓶颈。个性化推荐不仅提升了学习的效率,也让我的学习过程更加有趣和有挑战。
二、AI刷题实践记录
在这里我想分享一个我在使用豆包MarsCode AI刷题中经历的故事,即我在刷题提交代码的时候报错了(测试用例在第四个出错了)然后我用AI的提示助手的帮助功能提示我进行代码修改,最终一次性地跑通了代码。
这道题在豆包MarsCode AI刷题平台上名为《小C的外卖超时判断》(具体的题目要求和细节可见这一篇刷题笔记)。
我在当时的算法部分是这样写的:
def solution(t1: str, t2: str, t3: str) -> str:
# 将时间转换为分钟数
def time_to_minutes(time: str) -> int:
hours, minutes = map(int, time.split(":"))
return hours * 60 + minutes
# 转换输入的时间
t2_minutes = time_to_minutes(t2)
t3_minutes = time_to_minutes(t3)
# 如果 t3 的分钟数小于 t2,说明 t3 是次日的时间
if t3_minutes < t2_minutes:
t3_minutes += 24 * 60 # 跨天处理,t3 加 24 小时的分钟数
# 判断是否超时
if t3_minutes > t2_minutes:
return "Yes"
else:
return "No"
然后我点击提交测试代码,结果告诉我第三个测试用例没有通过,即:
示例3: 输入:t1="23:05",t2="00:05",t3 ="23:58"输出:"No" 代码在这个测试样例中出现了错误。
我当时并不认为我的代码有问题,然后我点击AI提示,AI提示是这样写的:
这个错误主要是由于在跨天处理时,代码没有正确考虑 t2 实际上是次日的情况。因此,当预计送达时间 t2 是次日的时间点,而实际送达时间 t3 仍然在当天晚间时,代码没有正确地识别这种情况。
修改后的方案:
为了修正这个问题,我们可以在代码中检查 t2 是否早于 t1,从而判断 t2 是否跨天。如果 t2 跨天,我们也需要将 t2 加上 24 小时的分钟数,以便在同一天的时间线下进行正确比较。
修改后的代码:
def solution(t1: str, t2: str, t3: str) -> str:
# 将时间转换为分钟数
def time_to_minutes(time: str) -> int:
hours, minutes = map(int, time.split(":"))
return hours * 60 + minutes
# 转换输入的时间
t1_minutes = time_to_minutes(t1)
t2_minutes = time_to_minutes(t2)
t3_minutes = time_to_minutes(t3)
# 判断 t2 是否跨天,如果 t2 比 t1 小,说明 t2 是次日
if t2_minutes < t1_minutes:
t2_minutes += 24 * 60 # 跨天处理,将 t2 加 24 小时
# 判断 t3 是否跨天,如果 t3 比 t1 小,说明 t3 是次日
if t3_minutes < t1_minutes:
t3_minutes += 24 * 60 # 跨天处理,将 t3 加 24 小时
# 判断是否超时
if t3_minutes > t2_minutes:
return "Yes"
else:
return "No"
代码解释:
- 跨天处理:首先检查
t2和t3是否比t1小,如果是,则说明t2或t3实际是次日的时间,分别加上 24 小时的分钟数。 - 超时判断:最终对比
t3和t2,如果t3超过了t2,则返回"Yes",否则返回"No"。
三、总结
至此,我提交了代码,并通过了平台的用例测试。我真切地感受到AI刷题是真的好用,一些小的细节上的问题,它可以给你解释得十分细致,并且完美解决这种问题,让刷题的效率大大提升。
我相信在未来,AI刷题的功能也会愈来愈强大,愈来愈好用,使每个使用者的刷题体验越来越好。