更新日志 CHANGELOG¶
本文件由 README 的 Update Log 整理而来,并持续补充。格式:
版本号 日期 - 说明。
v2.3.13 — 2026-09-15 试除法归位「质因数分解」应用 + 代码风格统一¶
update:数论 NumberTheory/质因数分解 PrimeFactorization/质因数分解 PrimeFactorization.md的## Application 应用新增「求欧拉函数」一节:试除法求 \(\varphi\) 的推导与模板,与相邻的「求因子和」共用「先分解 → 对每个素因子幂套公式 → 连乘」骨架update:欧拉函数 EulerPhi.md删去重复的试除法模板,改为指向质因数分解 PrimeFactorization#求欧拉函数;线性筛 LinearSieve.md的骨架与模板改用全局数组 +const int maxn写法fix:两篇笔记的 C++ 风格与库内统一:去掉using ll = long long,需要 64 位时用#define int long long;\(O(n)\) 的表数组保持 32 位int(跟着翻倍会吃内存),唯一会溢出的i * p用1LL *单独挡住;循环统一i++记法
v2.3.12 — 2026-09-15 新增「欧拉函数」「线性筛」两篇笔记¶
add:新增数论 NumberTheory/欧拉函数 EulerPhi/欧拉函数 EulerPhi.md:通式概率直觉 + 三个特例 + \(\varphi(p^k)=p^{k-1}(p-1)\) 的计数法推导 + 试除法 / 埃氏筛 / 线性筛三种求法与对比表,附 P2158、P2303、P3601 例题add:新增基础算法与常用技巧 BA&CT/线性筛 LinearSieve/线性筛 LinearSieve.md:骨架 + 「只被 spf 筛一次」的 break 与完全性证明 + 积性函数挂载表(spf / φ / μ / d / σ)+ P3383、P2568、P1835 例题;与欧拉函数笔记互相 wikilinkadd:新增配图docs/assets/EulerPhi-pk-count.svg(\(\varphi(p^k)\) 计数推导)、docs/assets/LinearSieve-insert.svg(线性筛三个插入点)update:数论 NumberTheory/.pages、基础算法与常用技巧 BA&CT/.pages、docs/index.md数论分区、基础算法与常用技巧 BA&CT/index.md登记新条目
v2.3.11 — 2026-09-14 新增「欧拉定理」笔记¶
add:新增数论 NumberTheory/欧拉定理 EulerTheorem/欧拉定理 EulerTheorem.md:直觉版讲解,不含证明。以「幂序列必呈 ρ 形(预热期 + 稳定环)」串起欧拉定理、费马小定理、扩展欧拉定理,附phi/qpow/ 字符串指数降幂模板与 P5091、P4139、CF906D 例题add:新增配图docs/assets/Euler-theorem-overview.svg(三定理关系)、docs/assets/Euler-theorem-rho.svg(幂序列 ρ 形直觉)update:数论 NumberTheory/.pages与docs/index.md数论分区登记新条目
v2.3.10 — 2026-09-13 提高组补非递归复杂度推导¶
update:提高组 Senior.md §1 新增「非递归代码怎么数」三条路:求和表(\(O(nm)\) / \(O(n^2)\) / 调和级数 \(O(n\log n)\) / 整除分块 \(O(\sqrt n)\) / 埃氏筛 \(O(n\log\log n)\))、倍增判据、均摊势能表(单调栈 / 双指针 / KMP /push_back扩容)update:同篇 §1 tip callout 补「非递归三招」,§10 速查表新增「非递归复杂度」「均摊分析」两行
v2.3.9 — 2026-09-11 仓库归档后的底栏与同步链路调整¶
update:overrides/partials/copyright.html底栏去掉已失效的「点个 star 再走」引导(GitHub 仓库已 archive,无法收藏),改为「仓库已归档,笔记照常更新」并指向oi.justraincoat.topupdate:同步链路改以服务器裸仓库/srv/notebook.git为准:post-receive检出 + 构建;sync.sh重写为「裸仓库 → 工作副本 → 重建」,并软链notebook-rebuild便于手动强制刷新fix:停用notebook-webhook.service并移除 nginx 中已失效的/webhook/反代(GitHub 端 webhook 不会再触发)
v2.3.8 — 2026-09-11 站点域名迁移至 oi.¶
update:mkdocs.yml的site_url由oi.notebook.justraincoat.top改为oi.justraincoat.top,canonical / sitemap / 站内绝对链接同步缩短- 旧域名保留并在 nginx 侧 301 到
oi.(/webhook/与 ACME 校验路径例外,避免 GitHub 回调被重定向)
v2.3.7 — 2026-09-04 R1Passport 解析块折叠化¶
- R1Passport 两篇共 34 处
**解析**改写为默认折叠 callout> [!success]- 解析(Obsidian 默认收起,展开见推导);callout 内段落↔列表以单独>行分隔,经验沉淀至notebook-note-writing
v2.3.6 — 2026-09-04 主定理判据改版¶
fix:提高组 Senior.md 中主定理表述改为「比较 \(f\) 的次数与 \(\log_b a\)」通用判据,解析删除「第一情形」编号,速查表同步update:提高组 Senior.md 中新增主定理判据表与「\(\log\) 幂次不算次数差距」callout
v2.3.5 — 2026-09-04 修复粗体标题后缺空行¶
- R1Passport 两篇(普及组 Junior / 提高组 Senior)修复 67 处「块元素前缺空行」:
**讲解**等粗体字段行、正文行后直接接-列表 /|表格 / 代码围栏会渲染变形,统一补空行;callout 与代码块两侧也补齐空行 - 约定沉淀至
notebook-note-writingskill:列表、表格、代码块前必须空一行
v2.3.4 — 2026-09-04 R1Passport 两篇考点卡化重构¶
- 「普及组 Junior」「提高组 Senior」按统一模板重构:每个考点 = 知识点(
###标题)+ 讲解 + 例题(真题内嵌升级)+ 解析(补推导过程,如哈夫曼 WPL、容斥 80/266、二叉树重建、Trie 节点计数)+ 易错辨析(warning)/ 常见变形 / 使用条件与技巧(tip) - 零散 callout 内容归位到固定字段;非考点的应试技巧章 / 速查表 / 经验之谈结构保留;未增删文件,wikilink 无变化
v2.3.3 — 2026-09-04 修复表格内转义链接¶
scripts/wikilinks_hook.py:切分别名前先还原\|为|,修复docs/index.md表格内 16 处[[笔记\|HTML]]构建后残留原样不生成链接的问题
v2.3.2 — 2026-09-04 索引补全 & callout 语法统一¶
- 全站 callout 统一为 Obsidian 语法
> [!type],清除最后 6 处!!!旧写法 - 「重链剖分 HLD」跳链依据的 error / success 提示(改为 tip 内嵌套 callout)
- 「重链剖分 HLD」P3976 区间翻转说明(改为列表项内 attention 提示)
- 「质因数分解」引理证明(改为 quote 内嵌套 tip)
- 「蚯蚓 P2827」单调性证明(改为列表项内 note,内嵌 tip)
- 补全索引漏收条目,孤儿笔记清零
- 数据结构索引:新增「平衡树 BalancedTree」
- 图论索引:新增「欧拉路径 / 哈密顿路径」,修正「Tree 树相关」编号 1. → 4.
- 主页索引:新增「提高组 Senior」「丢番图方程 IndeterminateEquation」
- 修复
.gitignore:.workbuddy与行尾注释粘连导致该目录实际未被忽略,改为.workbuddy/ - 新增
scripts/audit_vault.py:vault 健康度审计(悬空链接、表格转义链接、孤儿代码、孤儿笔记、callout 混用)
v2.3.1 on 2026-09-03 文档迁移¶
- 弃用Github Repo,全部迁移至 Obsidian。
- 所有链接统一调整为
[[]]模式。 - viewer链接已设置为Mkdocs自动转换。
v2.3.0 — 2026-08-18 数据结构模板重构 & 新增树状数组笔记¶
- 线段树模板重构:以 Tag + Info + SegTree 解耦设计(动态开点、
std::deque内存池)整体替换旧模板,框架与业务信息彻底分离,换题只需重写Tag/Info - 树链剖分(HLD)模板同步升级:内存池 + pbds 哈希表,内置
query_on_path路径操作 - 新增「树状数组 BIT」笔记:lowbit 原理(含 SVG 结构图)、代码模板、典型应用,以及与线段树的多维度辨析
- 题解代码统一收入
Code/目录:P3373(线段树 2)、P3313(HLD + 线段树综合)、P3374 / P3368 / P1908(树状数组)
v2.2.0 — 2026-08-17 新增 CSP 第一轮通关指南¶
- 新增「CSP第一轮通关指南 R1Passport」系列笔记(
docs/基础算法与常用技巧 BA&CT/CSP第一轮通关指南 R1Passport/): - 《普及组 Junior.md》:CSP-J 第一轮(初赛)高频考点总结与经验之谈——考试结构、计算机基础、C++ 语法细节、数据结构、算法、数学,附易错坑点(warning)与考前速查清单
- 《提高组 Senior.md》:CSP-S 第一轮(初赛)高频考点总结与经验之谈——复杂度分析、STL 陷阱、数据结构、图论算法、字符串、动态规划、数学,附考前速查清单
- 考点覆盖 NOI 大纲(2025 年修订版)、CSP-J/S 2025 真题,以及洛谷 SCP2025、SCP2026 模拟赛三路来源
- 更新
.gitignore:忽略.vscode、.workbuddy本地目录 - 移除
.crossnote/旧配置(config.js / head.html / parser.js / style.less)
v2.1.0 — 2026-08-14 全站重构¶
- 全站文件/目录统一为「中文 英文」命名(如
图论 Graph/树 Tree/最近公共祖先 LCA/最近公共祖先 LCA.md) - Code 代码库统一命名为
P题号.cpp(如P10449.cpp),废弃Luogu_P_xxx_xxx.cpp格式 - 所有站内链接改为
/viewer.html?file=xxx,不再直接跳转 MkDocs HTML 页面 - viewer.html 全新升级:
- Markdown 以 GitHub 风格渲染(marked.js + github-markdown.css,本地化)
- 代码块高亮(highlight.js 本地化),支持 C++/Python 等
- 支持 MathJax 公式、Mermaid 图表、相对路径图片
- 新增 Raw 模式(
?raw=1查看源文件) - 构建链路统一:webhook 自动构建与手动
./build.sh产出完全一致(md 复制 + viewer + Code + 悬空链接扫描) - 更新日志独立为 CHANGELOG.md 并挂入站点导航
- 清理 v1.x 遗留的 37 个手工 HTML 文件与旧目录
v2.0.5 — 2026-08-13¶
- 修复全部悬空链接(md/cpp 链接 404)
- 新增
viewer.html纯文本代码查看页与Code/index.html代码列表 - 新增
build.sh一键构建脚本(mkdocs build + Code 复制 + 悬空扫描) - 修复 MathJax 公式渲染:CDN 加载超时 → 本地化 mathjax 3 + mermaid
- 修复 4 处标题缺少显式锚点的问题
v2.0.4 — 2026-07-15¶
- 新增反悔贪心。
v2.0.3 — 2026-06-26¶
- 优化单调栈文档排版(算法流程改为嵌套列表结构)
- 新增 P2422 良好的感觉 例题讲解(单调栈 + 前缀和)
- 修复主页中 BA&CT 的指向链接错误
- 清理 HTML 中冗余的自定义样式(开屏动画、浮动目录等)
v2.0.2 — 2026-06-25¶
- 新增单调栈相关讲解(含 P5788 模板题、SP1805 最大矩形例题)
- 新增单调队列相关讲解(含 P1886 模板题、P1714 切蛋糕例题)
- 更新数据结构索引页面
v2.0.1 — 2026-05-29¶
- 整理了文档结构
- 新增一篇刷题笔记
- 新增二分查找相关内容
v2.0.0 — 2026-05-15¶
- 更新了链接系统
v1.3.1.3 — 2026-05-14¶
- 改了之前的版本号命名
- LCA 部分完坑
v1.3.1.2 — 2026-05-11¶
- 增加了树的直径的求法证明
- 更换了新的目录样式,更方便查找
v1.3.1.1 — 2026-05-07¶
- 恢复代理服务,重新提交。
- 更改了 MIT 许可证。
v1.3.1 — 2026-04-15¶
- 时隔两个月的再次更新。这两个月间,完成了 dp 专项的学习,然而并没有写到 Blog 里面
- 更新了一篇刷题笔记
- 发布 GitHub Page 页面
v1.3.0 — 2026-02-27¶
- 增加了 html 的动画效果(仅部分有,若该文件没有,会在最后一次更新后,自动添加)。
v1.2.1 — 2026-02-27¶
- 更新了一道树链剖分的例题。
v1.2.0 — 2026-02-11¶
- 不再提供 PDF 版本。
- 在目录中添加了树链剖分的部分。
v1.1.2 — 2026-02-11¶
- 完成了树链剖分(重链剖分)的部分,包括文字说明和例题代码。
v1.1.1 — 2026-01-23¶
- 修复了错别字。
- 更新了线段树的代码。
v1.1.0 — 2026-01-21¶
- 更新了所有的链接。
- 切换主要阅读模式至网页阅读。
- 生成了所有 Markdown 的 HTML 内容。
v1.0.4.3 — 2026-01-20¶
- 修缮了 README.md 部分文字说明。
v1.0.4.2 — 2026-01-20¶
- 紧急修复了 README.md 中部分链接错误
v1.0.4.1 — 2026-01-20¶
- 修复了部分文件的命名规范
- 完善了 README.md 中目录和更新的内容
v1.0.4 — 2026-01-20¶
- 更新 rope 相关内容。
v1.0.3 — 2026-01-16¶
- 更新平衡树相关内容,持续施工中。
- 创建 /gnu_cxx/ 用于记录实用的非 STL 函数。
- 更新 README.md 的部分说明。
v1.0.2 — 2026-01-14¶
- update IndeterminateEquation.md 挖坑待填。
- update Inverse.md 施工中。
- update PrimeFactorization.md 施工完毕。
v1.0.1 — 2026-01-12¶
- update README.md 结束 README.md 目录施工。
- update P10049.md 结束 P10049.md 内容撰写与 HTML 发布。
- update PrimeFactorization.md 结束 PrimeFactorization.md 内容撰写与 HTML 发布。
- update BitOperator.md 挖坑待填。