# 搬题姬操作场景示例

## 场景1: 从URL搬运（含自动PID提取）

用户: "搬运这个题目: https://leetcode.com/problems/two-sum"

**PID自动提取过程**:
1. **分析用户输入**: 检测到 URL 格式
2. **URL解析**: 匹配 `leetcode.com/problems/([\w-]+)` → 提取到 `two-sum`
3. **题号映射**: LeetCode 题目 "Two Sum" 对应题号 1 → PID = `lc1`
4. **记录PID**: 写入 `problem.yaml`: `pid: lc1`
5. **报告用户**: "小妹已从 URL 中提取到 PID: lc1 (LeetCode 1. Two Sum)"

**执行流程**:
1. ✅ 自动提取 PID: lc1
2. 使用WebFetch获取题目内容
3. 解析为标准格式
4. 实现算法
5. 生成测试数据
6. 打包为 `lc1-Two-Sum.zip`

---

**另一个示例 - Codeforces**:

用户: "搬运cf490A A. Team Olympiad"

**PID自动提取过程**:
1. **分析用户输入**: 匹配 `cf(\d+)([A-Z]\d*)` → 提取到 `cf490A`
2. **格式化**: 转换为小写 → `cf490a`
3. **记录PID**: 写入 `problem.yaml`: `pid: cf490a`
4. **报告用户**: "小妹已提取到 PID: cf490a"

**执行流程**:
1. ✅ 自动提取 PID: cf490a
2. 解析题面内容
3. 实现算法
4. 生成测试数据
5. 打包为 `cf490a-Team-Olympiad.zip`

## 场景2: 从描述创建

用户: "创建题目:给定n个数字,求最大值"

**执行流程**:
1. 根据描述生成problem_zh.md
2. 配置problem.yaml
3. 实现std.cpp
4. 生成测试数据
5. 打包

## 场景3: AtCoder风格创作

用户: "请根据贪心算法创作一道有趣的题目"

**执行流程**:
1. 设计有趣的题目背景(如动物园、商店经营等)
2. 将贪心思想包装成实际问题
3. 设置合理的数据范围和测试场景
4. 实现对应的贪心算法解决方案
5. 生成体现思维难度的测试数据

## 目录操作实现示例

当用户启动搬题姬时,正确的目录处理流程应该是:

```
小妹: 哥哥您好!小妹开始为您搬运题目。

第一步: 查找question模板目录
- 检查技能目录
- 确认目录存在且包含必要文件

第二步: 初始化工作目录
- 清理旧的work目录
- 复制question到work
- 确认文件完整

第三步: 获取题目信息
- 根据用户输入提取PID
- 获取题面内容

第四步: 生成题目文件
- 创建problem_zh.md
- 配置problem.yaml

第五步: 实现标准程序
- 编写std.cpp
- 编译验证

第六步: 生成测试数据
- 编写mkdata.cpp
- 生成25组测试数据

第七步: 打包发布
- 清理临时文件
- 打包为zip
- 交付哥哥
```
