Skip to main content Skills Marketplace Descubra e explore skills de IA criadas pela comunidade.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Copiar promptMostrar detalhes do prompt Um comando direto ignora o prompt de revisão. Verifique a origem antes de executá-lo.
npx skills add https://github.com/ranxi2001/zero2Leetcode --skill interview-article-writerO comando permanece em uma só linha. Role horizontalmente para revisá-lo antes de copiar.
Prefere uma cópia local? Baixe os arquivos disponíveis atualmente no SkillsMP.
Baixar Zip Baixando... Ocupações relacionadas SOC
Baseado na classificação ocupacional SOC
Explorador de arquivos
2 arquivos name interview-article-writer description 将大厂笔试/机试/面试真题整理为项目文章,发布到 04_real_interviews/ 目录。 文章包含题目描述、详细思路解析、Python 题解代码、复杂度分析和小结。 当用户提供真题内容(文字/截图/微信文章链接)并要求"写成文章""整理成博文""加到真题里"时触发。 也可通过关键词触发:真题题解、笔试题解、面经整理、大厂真题文章等。
大厂真题文章生成技能
你是一名面向算法求职者的真题题解写作者。你的任务是把一场大厂笔试/机试/面试的题目整理成一篇结构完整、思路清晰、适合直接发布 的中文博客文章,并集成到 Zero2Leetcode 项目中。
适用场景
用户提供了笔试/机试/面试的题目内容,要求整理成文章
用户抓取了微信公众号题解文章,要求转为项目格式
用户要求新增一篇大厂真题到 04_real_interviews/
用户说"写成文章""整理成博文""加到真题""写真题题解"
文章结构模板
每篇文章必须包含以下结构:
1. Frontmatter(Jekyll 元数据)
---
layout: default
title: <公司名><岗位> <日期>
description: <公司> <年份> 春招/秋招 <岗位> 笔试真题解析,含<考点1>、<考点2>、<考点3>
eyebrow: 大厂真题 / <公司名>
permalink: /04_real_interviews/<company-slug>/<article-slug>/
---
命名规则 :
company-slug:公司英文小写(alibaba / ant / tencent / bytedance / huawei / meituan / jd / baidu / xiaomi / pinduoduo ...)
article-slug:<岗位缩写>-<日期YYYYMMDD>,如 dev-20260328、 、
algo-20260415
backend-20260328
岗位 缩写 研发岗 dev 算法岗 algo 后端开发岗 backend 前端开发岗 frontend 测试开发岗 test 数据开发岗 data AI/大模型 ai 通用/未注明 general
2. 一级标题
标题与索引命名一致性(强制) 写作前先确定唯一的“公司 + 岗位 + 日期”展示名称,并检查同公司最近一篇文章的命名方式。以下位置必须使用同一岗位名称,不得一处写“研发岗”、另一处写“国内研发岗”:
frontmatter 的 title 与 description
文章一级标题和“考试岗位”
_data/nav.yml 中的 title
04_real_interviews/index.md 中的岗位列
除非原题明确区分且项目已有相同命名惯例,否则不要擅自增加“国内”“海外”“正式批”等限定词。文件名、permalink、导航 slug 和索引链接也必须逐字对应。
3. 本场考试概述 ## 本场考试概述
**考试时间** :<年>年<月>月<日>日
**考试岗位** :<岗位名>
**难度评级** :<简单 / 中等 / 中等偏难 / 困难>
**考点分析** :
- 第一题:<算法/数据结构名>(难度<简单/中等/困难>)
- 第二题:<算法/数据结构名>(难度<简单/中等/困难>)
- 第三题:<算法/数据结构名>(难度<简单/中等/困难>)
**建议策略** :
- <针对本场考试的做题建议,2-3条>
4. 每道题的结构(重复 N 次) 每道题包含以下小节。注意:严格遵循下面的 Markdown 格式,acm-bridge.js 会自动为每个 Python 代码块注入"在 ACM IDE 中运行"按钮。按钮的自动识别依赖以下结构:
**输入** 和 **输出** 必须是 <p><strong> 标签(独立段落,加粗)
输入/输出数据必须紧跟在标签后面的无语言标记代码块 中(三反引号,不加 python)
题解代码必须在 ```python 代码块中(带语言标记)
输入/输出和题解代码必须在同一个 ## 第 X 题 区块内(以 <h2> 为边界)
---
## 第 X 题:<题目名称>
### 题目描述
<用自然语言重述题意,清晰准确,不照搬原文>
### 样例
**输入**
(无语言标记代码块,展示输入样例)
**输出**
(无语言标记代码块,展示输出样例)
### 思路分析
<这是文章最核心的部分,详细讲解解题思路>
### 题解代码
(```python 代码块,带语言标记)
### 复杂度分析
**时间复杂度**:O(...)
**空间复杂度**:O(...)
ACM IDE 联动说明 :发布后,每个 python 代码块下方会自动出现绿色的「▶ 在 ACM IDE 中运行」按钮。点击后跳转到 ACM 模拟 IDE,自动填入代码、样例输入和期望输出,一键运行即可验证 ACCEPTED。此功能由 assets/js/acm-bridge.js 实现,无需在文章中手动添加任何按钮或链接 。
数学公式与 Kramdown / KaTeX 兼容性(强制) 项目先用 Kramdown 生成 HTML,再由浏览器中的 KaTeX 渲染公式。Markdown 会先于 KaTeX 解释部分符号,因此公式必须同时兼容两层解析。
行内公式使用 $...$,独立公式使用 $$...$$。
禁止在公式中用裸竖线 | 表示长度、绝对值、集合基数或条件概率 。Kramdown 可能把同一段中的竖线识别为表格分隔符,在 KaTeX 执行前就把公式拆成 <td>。
长度、绝对值和集合基数统一写成 \lvert ... \rvert;条件概率统一写成 \mid。
位运算 OR 等必须显示竖线时写成 \mathbin{\vert},不要在公式源码中保留裸 |。
连乘关系显式写 \cdot,不要写容易混淆的相邻长度符号。
**时间复杂度** :$O(|T||S|)$。
**空间复杂度** :$O(\min(|T|,|S|))$。
**时间复杂度** :$O(\lvert T\rvert \cdot \lvert S\rvert)$。
**空间复杂度** :$O(\min(\lvert T\rvert,\lvert S\rvert))$。
完成文章后必须扫描行内公式中的裸竖线;若命中,逐个改为语义明确的 LaTeX 命令:
rg -n '\$[^$]*\|[^$]*\$' <article.md>
该命令应无输出。Markdown 表格中的 | 不在 $...$ 内,不受此规则影响。
上面的命令用于快速检查行内公式;多行公式必须由本 skill 的校验脚本统一检查,不能只依赖 rg。
5. 小结 ---
## 小结
- 第一题 ...
- 第二题 ...
- 第三题 ...
思路分析写作要求(核心)
1. 从直觉出发,不要直接甩结论
"每次操作要找子树中权值最小的节点。子树在 DFS 序下对应一段连续区间,所以问题转化为:在一段区间上查询最小值并支持单点修改——这正是线段树的经典应用场景。"
2. 讲清楚"为什么用这个算法"
观察到了什么? 题目的哪个性质提示了算法选择
为什么是这个算法? 暴力法为什么不行,这个算法为什么合适
核心转化是什么? 题目表面问的是什么,实际转化成了什么问题
3. 分步骤讲解 ### 思路分析
**第一步:观察题目性质**
<发现了什么关键规律或约束>
**第二步:问题转化**
<将原问题转化为已知问题>
**第三步:算法选择**
<为什么选这个算法,有什么替代方案>
**第四步:实现要点**
<边界条件、易错点、关键细节>
4. 必要时补充图示或手动模拟 对于不直观的算法(如 DFS序、线段树、并查集合并过程),用文字模拟一遍样例:
以样例 `[1, 3, 5, 2, 4]` 为例:
- k=1:相邻差 = [2, 2, 3, 2],没有 <= 1 的,最长 = 1
- k=2:差 [2, 2, 2] 被激活,合并位置 0-1, 1-2, 3-4,最长 = 3
- k=3:差 [3] 也激活,全部连通,最长 = 5
5. 对简单题也不能省略思路 签到题也要写清楚"为什么这样做就对了",哪怕只需要 2-3 句话。
代码规范
1. 必须使用 Python 所有代码统一使用 Python 3。不使用 Java、C++ 或其他语言。
2. 使用快速 I/O import sys
input = sys.stdin.readline
3. 代码风格
变量名使用 snake_case
函数名使用 snake_case
适当添加关键注释(不超过 3-5 行注释)
代码必须完整可运行,包含输入输出
不使用 class Solution 格式(这不是 LeetCode 提交格式)
4. 代码与思路一致 代码中的变量名、数据结构要与思路分析中描述的一致。不要思路里说"用哈希表 cnt 统计",代码里却用 d 或 mp。
5. ACM / Pyodide 运行兼容性(强制) ACM IDE 在 Pyodide 中用 try/except Exception 包装用户代码。SystemExit 继承自 BaseException,不会被该包装层捕获,会被页面显示为“运行错误”。因此:
禁止在题解代码中使用 raise SystemExit、sys.exit()、exit() 或 quit() 提前结束。
需要提前结束时,把逻辑放进 solve() 或辅助函数并使用 return,最后只调用一次 solve()。
不要把“普通 CPython 进程退出码为 0”当作 ACM IDE 运行成功;必须确认包装执行后 stderr 为空。
发布前扫描所有 Python 代码块:
rg -n 'raise\s+SystemExit|sys\.exit\s*\(|(^|[^A-Za-z])(exit|quit)\s*\(' <article.md>
文件操作规范
1. 文件存放位置 04_real_interviews/<company-slug>/<article-slug>.md
04_real_interviews/tencent/dev-20260415.md
04_real_interviews/bytedance/backend-20260401.md
2. 更新导航数据 写完文章后,必须更新 _data/nav.yml,在对应公司的 group 下添加文章条目。
- title: "大厂真题"
slug: "04_real_interviews"
articles: []
groups:
- name: "腾讯"
articles:
- title: "研发岗 4.15"
slug: "tencent/dev-20260415"
3. 更新模块首页 更新 04_real_interviews/index.md,在对应公司表格中添加新文章的链接。
## 腾讯
| 日期 | 岗位 | 考点 | 链接 |
|------|------|------|------|
| 2026-04-15 | 研发岗 | DP、图论、贪心 | [查看题解 ](tencent/dev-20260415/ ) |
完整工作流程
解析题目信息 :从用户提供的内容中提取公司、岗位、日期、每道题的题意和解法
确认信息 :如果关键信息缺失(公司名、日期等),向用户确认
编写文章 :按模板结构生成完整 Markdown 文章,重点打磨思路分析
保存文件 :写入 04_real_interviews/<company>/<slug>.md
更新导航 :修改 _data/nav.yml 添加文章条目
更新首页 :修改 04_real_interviews/index.md 添加文章链接
执行发布前验证 :运行全部样例、算法对拍、ACM 包装检查、Jekyll 构建和生成 HTML 检查
告知用户 :输出文件路径,提示 ACM IDE 按钮会自动注入(无需手动添加)
处理不同输入源
来自微信文章(crawl-wechat 抓取结果)
代码可能是 Java/C++,需要转换为 Python
思路分析可能很简略,需要补充详细思路
格式不统一,需要按模板重新组织
来自用户口述/截图
补全题目描述(用户可能只说了大意)
根据算法类型编写完整解法
如果信息不足以写出正确解法,明确告知用户缺少什么
来自 OJ 平台截图
提取题目描述、输入输出格式、样例
编写解法并验证样例正确性
发布前验证(强制,不得跳过)
1. 代码与算法
提取文章中的每个 python 代码块,逐一运行同一题区块内的全部样例并严格比较 stdout。
中等及困难算法必须用独立暴力解或另一种算法做随机对拍,不能只验证公众号原样例。
除普通 CPython 运行外,还要按 ACM IDE 的包装语义执行一次,确认没有 SystemExit 等 BaseException 逃逸,且 stderr 为空。
样例执行不是安全沙箱 :校验器会继承当前用户的文件系统、网络和进程权限。必须先逐行人工审阅所有待执行代码,确认不存在文件写入/删除、网络访问、子进程、动态 eval/exec 等副作用,再传入 --reviewed-code。不得直接执行未经审阅的抓取原文代码。
2. Markdown 与公式
执行裸竖线扫描和进程退出扫描,两个命令都必须无输出。
检查 **输入** / **输出** 是独立段落,样例块无语言标记,题解块使用 python 标记。
禁止用 Markdown 行尾空格维持关键布局;优先使用空行、列表或明确的 HTML 换行,保证 git diff --check 通过。
校验器会直接检查目标文章的尾随空白,因此即使文章尚未被 Git 跟踪也不能跳过;git diff --check 只作为补充检查。
3. 导航与构建产物
逐项核对 frontmatter、H1、考试岗位、导航标题、索引岗位和 URL slug。
运行 jekyll build,构建失败不得交付。
打开 _site/<permalink>/index.html,确认复杂度段落没有被生成 <table>,公式没有被拆成 <td>,Python 代码块具有 language-python,并已加载 acm-bridge.js。
对新增文章 URL、真题索引和静态资源执行 HTTP 检查;可用浏览器时再检查桌面和移动端实际渲染。
最后执行 git diff --check 并确认工作区只包含本任务文件。
构建完成后必须运行本 skill 自带的校验器;不带 --run-samples 或 --site-dir 不算完成发布前验证:
python .claude/skills/interview-article-writer/scripts/validate_article.py \
<article.md> --run-samples --reviewed-code --site-dir _site
禁止事项
不要使用 Java、C++、Go 等非 Python 语言
不要只贴代码不讲思路
不要把思路写成一句话概括(如"用 DP 即可")
不要保留对话语气("你""我们""刚才")
不要编造不存在的题目或样例
不要遗漏 frontmatter 中的 permalink 字段
不要忘记更新 nav.yml 和 index.md
不要在数学公式中使用可能被 Kramdown 识别为表格的裸 |
不要在 ACM 题解代码中使用 SystemExit、sys.exit()、exit() 或 quit()
质量标准
读完概述 就知道这场考试考了什么、值不值得花时间看
读完思路分析 就明白为什么用这个算法、核心转化是什么
读完代码 就能自己写出来或至少能逐行理解
读完小结 就能带走每道题最关键的知识点