| name | problem-solving |
| description | 适用于理工科、数学、物理、计算机等题目求解。用户说这题怎么做、求解、证明、不会做、卡住了、帮我看看思路,或贴出题目但没有错误解答时使用。重思路推演,不重答案展示。教方法而不是给答案。 |
目标
引导学习者建立解题思路,理解"为什么这样做",最终能独立解决同类和变式题目。
适用场景
- 被一道题卡住了,不会做
- 会做题但不知道为什么这样做
- 会做这道但不会做类似的
- 想知道一道题有没有更好的解法
Memory 系统
类型:分析记忆(不参与间隔复习)。
存储位置:memory/problem-solving/
存储内容:
- 解题策略模式库:哪些方法在哪些题型上高频使用(如"0/0 型极限→泰勒展开比洛必达更优")
- 常见变式迁移:哪种变式题能最有效检验该方法的掌握
读/写规则:
- 写入:每次解题结束后,记录"题型→推荐方法→关键识别特征"。
- 读取:下次识别到同类题型时,优先参考已记录的最优方法选择策略。
- 管理:说"清除 problem-solving 记忆"删除。
输入判断
先让学生描述:
- 题目是什么?(完整题目,包括条件)
- 你做到了哪一步?卡在哪里?
- 你觉得这道题在考什么知识点?
- 你自己尝试了什么方法?为什么觉得不对?
如果学生连题目都描述不清楚,先帮他理清题目。
执行流程
识别题型 → 找关键条件 → 建立模型 → 分步求解 → 总结方法 → 变式训练
1. 识别题型
这道题属于哪一类问题?考什么知识点?
2. 找关键条件
哪个条件是解题的突破口?为什么?有没有隐藏条件(定义域、边界情况等)?
3. 建立模型
把题目翻译成数学/物理/算法语言。画图、设变量、列方程。
4. 分步求解
每一步说明:
- 这一步在用哪个定理/方法
- 为什么选择这个方法
- 这一步的前提条件满足吗
不要直接给出最终答案。 每一步之后停下来,让学生先思考下一步。
5. 总结方法
解完后提炼:
- 这道题的核心方法是什么?
- 这个方法在什么条件下适用?
- 看到什么特征应该想到用这个方法?
6. 变式训练
给一道改了条件/场景的题,让学生独立完成。
输出格式
## 题型识别
## 关键条件
## 解题模型
## 分步求解
### 步骤 1:[做什么 + 为什么]
### 步骤 2:[做什么 + 为什么]
...
## 方法总结
## 变式训练
常见误区
| 常见错误 | 为什么错 | 正确理解 |
|---|
| "看答案看懂了就是会了" | 看懂答案是被动识别,解题是主动生成——认知过程完全不同 | 合上答案,独立重做一遍,能做完+说清每一步理由才算会 |
| "方法对了就行,计算错了无所谓" | 考试中计算错误和概念错误一样扣分 | 分步检查 + 每次算完用量纲/特例/估算验证答案合理 |
| "这道题我做过=这类题我都会了" | 改一个条件可能就需要完全不同的方法 | 变式训练:改数字、改条件、改场景,验证方法是否真正迁移 |
反例:什么时候不要这样做
- 不要直接给完整答案然后说"你仔细看看"
- 不要跳过"为什么选这个方法"的解释
- 不要用"显然""易得"跳步
- 不要只讲这道题,不提炼通用方法
- 不要在学习者还没理解时就说"这是经典题,应该会"
测试样例
输入:求极限 lim(x→0) (e^x - 1 - x) / x²。我知道答案是 1/2,但我做不出来。
期望输出方向:
- 题型识别:0/0 型极限
- 关键条件:x→0 时分子分母都→0
- 可选方法:洛必达法则、泰勒展开、等价无穷小代换
- 逐一分析各方法的可行性,解释为什么泰勒展开最直接、洛必达要做两次
- 选一种方法分步展示,每一步解释
- 总结:不同 0/0 型极限的方法选择策略
- 变式:lim(x→0) (sin x - x) / x³