数理视界

数学与科技的奇妙碰撞

数理视界

数学与科技的奇妙碰撞

基于Notion的竞赛学生动态管理系统的设计与实践

摘要

数学竞赛教育面临着学生个体差异大、培养周期长、心理波动频繁等挑战。传统的纸质记录或通用表格工具难以满足竞赛教练对学生进行全方位、动态化管理的需求。本文提出了一套基于Notion平台构建的竞赛学生管理系统,系统整合了学生档案管理、成绩动态追踪、竞赛记录、心理辅导日志四大功能模块。通过利用Notion的数据库关联能力、模板功能和API扩展性,实现了学生从入学到竞赛结束的完整成长轨迹记录。

关键词:Notion;竞赛学生管理;动态成长记录;教育信息化;个性化教学

阅读全文 »

从零搭建 Hexo 博客并部署到 Vercel 全流程教程

本教程将详细介绍如何从零开始搭建一个支持 LaTeX 数学公式的 Hexo 博客,并部署到 Vercel 实现自动部署。

准备工作

1. 安装 Node.js

首先需要安装 Node.js 环境:

1
2
3
4
# 推荐使用 nvm 安装
# Windows: https://github.com/coreybutler/nvm-windows
# macOS/Linux:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash

2. 安装 Git

1
2
3
# Windows: 下载 Git for Windows
# macOS: brew install git
# Ubuntu: sudo apt install git

3. 安装 Hexo

1
npm install -g hexo

第一部分:GitHub 配置

1. 创建 GitHub 账号

访问 GitHub 注册账号。

2. 生成 Personal Access Token (PAT)

  1. 登录 GitHub → Settings → Developer settings → Personal access tokens
  2. 点击 “Generate new token (classic)”
  3. 设置 Token 名称(如 “Hexo Deploy”)
  4. 勾选所需权限:
    • repo - 完整仓库操作
    • workflow - GitHub Actions
  5. 点击 “Generate token”
  6. 重要:复制并保存好生成的 Token(只会显示一次!)

3. 安装 GitHub CLI

1
2
3
4
5
# Windows (使用 winget)
winget install GitHub.cli

# 验证安装
gh --version

4. 配置 GitHub CLI

1
2
3
4
5
# 设置 Token
gh auth login --with-token <YOUR_GITHUB_TOKEN>

# 或者交互式登录
gh auth login

第二部分:创建 GitHub 仓库

1. 创建新仓库

可以通过 GitHub 网页创建,或使用 CLI:

1
gh repo create my-hexo-blog --public --description "我的数学博客"

2. 克隆仓库到本地

1
2
git clone https://github.com/YOUR_USERNAME/my-hexo-blog.git
cd my-hexo-blog

第三部分:初始化 Hexo 博客

1. 初始化 Hexo

1
2
3
hexo init my-hexo-blog
cd my-hexo-blog
npm install

2. 安装必要插件

1
2
3
4
5
# Markdown 渲染增强(支持更多语法)
npm install hexo-renderer-markdown-it-plus --save

# KaTeX 数学公式支持
npm install markdown-it-katex --save

3. 配置主题(推荐 NexT)

1
npm install hexo-theme-next --save

4. 修改 Hexo 配置文件

编辑 _config.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Site
title: 我的数学博客
subtitle: ''
description: 数学每日一题分享
keywords:
author: 你的名字
language: zh-CN
timezone: ''

# Extensions
theme: next

# Markdown Configuration
markdown:
plugins:
- markdown-it-katex
katex:
throwOnError: false
errorColor: "#cc0000"

5. 配置 NexT 主题支持 LaTeX

编辑 themes/next/_config.yml

1
2
3
4
5
6
math:
every_page: true

katex:
enable: true
copy_tex: false

第四部分:Vercel 配置

1. 注册 Vercel 账号

访问 Vercel 注册账号,推荐使用 GitHub 账号登录。

2. 安装 Vercel CLI

1
npm install -g vercel

3. 登录 Vercel

1
2
vercel login
# 按提示完成登录

4. 部署到 Vercel

1
2
3
4
5
6
7
8
# 在 Hexo 项目目录下
cd my-hexo-blog

# 部署(首次)
vercel --prod

# 之后更新只需
vercel --prod --yes

5. 绑定自定义域名(可选)

1
2
3
4
# 添加域名
vercel domains add your-domain.com

# 或者在 Vercel Dashboard 中操作

第五部分:实现自动部署

工作原理

1
本地 Git Push → GitHub → Vercel 检测到更新 → 自动构建 → 自动部署

配置步骤

  1. 确保 Vercel 项目连接了 GitHub 仓库

    • 在 Vercel Dashboard 中导入 GitHub 仓库
    • Vercel 会自动检测为 Hexo 项目
  2. 每次更新博客的流程

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 1. 进入博客目录
cd my-hexo-blog

# 2. 写新文章
hexo new post "新文章标题"

# 3. 编辑文章(使用 Markdown)

# 4. 提交更改
git add .
git commit -m "发布新文章"

# 5. 推送到 GitHub
git push origin main
  1. Vercel 会自动
    • 检测到 GitHub 更新
    • 自动运行 hexo generate
    • 自动部署到网站

第六部分:图片管理

方案一:使用本地图片

  1. 将图片放入 source/images/ 目录
  2. 在文章中引用:
1
![图片描述](/images/image-name.png)

方案二:使用图床

推荐使用图床服务(如 sm.ms、imgbox 等)上传图片,然后在文章中引用图片链接。


第七部分:LaTeX 数学公式

基本语法

行内公式

1
这是一个行内公式 $E = mc^2$

行间公式

1
2
3
$$
\int_0^1 f(x)dx = F(b) - F(a)
$$

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 一元二次方程

## 求根公式

$$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$$

## 例题

解方程 $x^2 - 5x + 6 = 0$

**解:**
$$x = \frac{5 \pm \sqrt{25 - 24}}{2} = \frac{5 \pm 1}{2}$$

所以 $x_1 = 3$, $x_2 = 2$

常见问题

Q1: Vercel 部署失败

检查:

  1. package.json 是否存在
  2. 依赖是否安装完整(运行 npm install
  3. 主题配置是否正确

Q2: LaTeX 公式不显示

  1. 确保已安装 markdown-it-katex
  2. 检查 themes/next/_config.yml 中 math 配置
  3. 清除缓存后重新部署:hexo clean

Q3: 图片不显示

  1. 检查图片路径是否正确
  2. 确保图片在 source/images/ 目录
  3. 使用相对路径 /images/xxx.png

总结

通过本教程,你应该已经掌握了:

  • ✅ 配置 GitHub 和生成 Personal Access Token
  • ✅ 使用 GitHub CLI 管理仓库
  • ✅ 初始化和配置 Hexo 博客
  • ✅ 安装和配置 NexT 主题
  • ✅ 启用 LaTeX 数学公式支持
  • ✅ 部署到 Vercel
  • ✅ 配置自定义域名
  • ✅ 实现自动部署

教程更新时间:2026-03-02

人工智能入门指南

什么是人工智能?

人工智能(Artificial Intelligence,简称 AI)是使计算机具有人类智能的技术学科。

人工智能的分支

1. 机器学习 (Machine Learning)

让计算机通过数据学习并改进。

2. 深度学习 (Deep Learning)

使用神经网络模拟人脑工作方式。

3. 自然语言处理 (NLP)

让计算机理解和生成人类语言。

推荐的入门路径

  1. Python 基础 - 学会编程
  2. 数学基础 - 线性代数、概率论
  3. 机器学习 - 了解基本算法
  4. 深度学习 - 神经网络

常用工具

工具 用途
Python 编程语言
TensorFlow 深度学习框架
PyTorch 深度学习框架
Scikit-learn 机器学习库

持续更新中…

每日一题: 2020-11-07

题目: 如图, 在ABC\triangle ABC 中, AB=42,BC=7,ADAB=4\sqrt{2}, BC=7, ADABC\triangle ABC 的中
线, 点HH 在线段ADAD 上, 若ABC=BHD=45,BH\angle ABC=\angle BHD=45^{\circ}, BHACAC 于点FF.
CFCF.

图片挂了, 刷新一下呗

参考思路

ABC=45\angle ABC=45^{\circ}, 作BCBC 边上的高构造等腰直角三角形, 由已知可得AG=4,GC=3,AC=5,DG=12AG=4, GC=3, AC=5, DG=\frac{1}{2}
可得AD=652AD=\frac{\sqrt{65}}{2}, 再由ABC=BHDABDHDBBDAD=HDBD\angle ABC=\angle BHD\Rightarrow \triangle ABD\backsim \triangle HDB\Rightarrow \frac{BD}{AD}=\frac{HD}{BD}
从而求出HD=4965130AHHD=1649HD=\frac{49\sqrt{65}}{130}\Rightarrow \frac{AH}{HD}=\frac{16}{49}.

过点AAAEBCAE\parallel BC, 构造比例线段, 由AFCF=AEBC=AE2BD=AH2HD\frac{AF}{CF}=\frac{AE}{BC}=\frac{AE}{2BD}=\frac{AH}{2HD}
可求得FC=4957,AC=24557FC=\frac{49}{57}, AC=\frac{245}{57}.

图片挂了, 刷新一下呗

每日一题: 2020-11-06

题目: 如图, 已知ABC\triangle ABCAB=BC,ACB=120AB=BC, \angle ACB=120^{\circ}, PPABC\triangle ABC
内部一点, 且满足APB=PBC=150\angle APB=\angle PBC=150^{\circ}.
(1) 求证: PABPBC\triangle PAB\backsim \triangle PBC;
(2) 求证: PA=3PCPA=3PC;
(3) 若AB=10AB=10, 求PAPA 的长.

图片挂了, 刷新一下呗

参考思路

(1) 由已知易得PAB=30PBA=PBC\angle PAB=30^{\circ}-\angle PBA=\angle PBC, 所以PABPBC\triangle PAB\backsim \triangle PBC.

(2) 易得ABBC=3\frac{AB}{BC}=\sqrt{3}. 由PABPBCPAPB=PBPC=ABBC=3\triangle PAB\backsim \triangle PBC\Rightarrow \frac{PA}{PB}=\frac{PB}{PC}=\frac{AB}{BC}=\sqrt{3} ,可得结论.

(3) 如图, 将线段BPBP 绕点BB 顺时针旋转6060^{\circ} 得到BPBP', 连结PP,CPPP',CP', 则BPP\triangle BPP' 为正三角形.
4=7=60,PP=PB=BP=3PC\therefore \angle 4=\angle 7=60^{\circ}, PP'=PB=BP'=\sqrt{3}PC,
5=BPC4=15060=90\therefore \angle 5=\angle BPC-\angle 4=150^{\circ}-60^{\circ}=90^{\circ},
RtPPCRt \triangle PP'C 中, 5=90,PP=3PCtan6=PCPP=33\angle 5=90^{\circ}, PP'=\sqrt{3}PC\Rightarrow \tan\angle 6=\frac{PC}{PP'}=\frac{\sqrt{3}}{3}.
6=606+7=30+60=90\therefore \angle 6=60^{\circ}\Rightarrow \angle 6+\angle 7=30^{\circ}+60^{\circ}=90^{\circ}.
PC=2PC\therefore P'C=2PC.
$\therefore $ 在RtBCPRt\triangle BCP' 中, PC=2PC,BP=3PCP'C=2PC, BP'=\sqrt{3}PC.
由(2) 中ABBC=3,AB=10BC=103\frac{AB}{BC}=\sqrt{3}, AB=10\Rightarrow BC=\frac{10}{\sqrt{3}}
(2PC)2+(3PC)2=(103)2PC=102121\therefore (2PC)^2+(\sqrt{3}PC)^2=(\frac{10}{\sqrt{3}})^2\Rightarrow PC=\frac{10\sqrt{21}}{21}
PA=10217\therefore PA=\frac{10\sqrt{21}}{7}

图片挂了, 刷新一下呗

每日一题: 2020-11-05

题目: 如图正方形ABCDABCD 顶点B,CB,CO\odot O 上, 边ADAD 经过O\odot O 上一定点EE,
AB,CDAB,CD 分别与O\odot O 相交于点G,FG,F, 且EFEF 平分BFD\angle BFD.
(1) 求证: ADADO\odot O 的切线.
(2) 若DE=2DE=\sqrt{2}, 求DEDE 的长.

图片挂了, 刷新一下呗

参考思路

(1) 连结OEOE, 根据角平分线的定义求出DFE=OFE\angle DFE=\angle OFE, 根据等腰三角形的性质
得出OEF=OFE\angle OEF=\angle OFE, 求出DFE=OEF\angle DFE=\angle OEF, 求出OEADOE\bot AD, 所以ADAD
O\odot O 的切线.

(2) 连接BEBE, 易证DEFABE\triangle DEF\backsim \triangle ABE, 得DFAE=DEABDE=22\frac{DF}{AE}=\frac{DE}{AB}\Rightarrow DE=2\sqrt{2}.

每日一题: 2020-11-04

题目: 如图, ABABO\odot O 的一条弦, 向两端分别延长ABABPPQQ, 过P,QP,Q
别作O\odot O 的两切线切O\odot OM,NM,N 两点, 连结MNMN.
(1) 若PA=QBPA=QB, 求证: MNMN 平分ABAB;
(2) 若MNMN 平分ABAB, 求证: PA=QBPA=QB.

图片挂了, 刷新一下呗

参考思路

(1) 如图所示, 连结OP,OQ,OM,ONOP,OQ,OM,ON, 设PQPQMNMN 相交于点KK, 连结OKOK.
PA=QB,PM,QN\because PA=QB, PM,QN 为切线, 由切割线定理得
PM2=PAPB=PA(PA+AB)=QB(QB+BA)=QBQA=QN2PM=QNPM^2=PA\cdot PB=PA\cdot (PA+AB)=QB\cdot (QB+BA)=QB\cdot QA=QN^2\Rightarrow PM=QN.
OM=ON,PMO=QNOPMOQNO(HL)OM=ON, \angle PMO=\angle QNO\Rightarrow \triangle PMO\cong QNO(HL)
OP=OQ,MOP=NOQMON=POQ\therefore OP=OQ, \angle MOP=\angle NOQ\Rightarrow \angle MON=\angle POQ
QPO=NMOK,P,M,O\therefore \angle QPO=\angle NMO\Rightarrow K,P,M,O 四点共圆,
QKO=PMO=90\therefore \angle QKO=\angle PMO=90^{\circ}
KA=KB\therefore KA=KB

(2) 如图, 如果KA=KBOKABKA=KB\Rightarrow OK\bot AB
O,K,P,M\therefore O,K,P,MO,K,N,QO,K,N,Q 都是四点共圆.
OPK=OMK,OQK=ONK\therefore \angle OPK=\angle OMK, \angle OQK=\angle ONK
OM=ON\because OM=ON, OMK=ONK\therefore \angle OMK=\angle ONK.
OPK=PQKOP=OQ\therefore \angle OPK=\angle PQK\Rightarrow OP=OQ
OKPQKP=KQPA=QB\because OK\bot PQ\Rightarrow KP=KQ\Rightarrow PA=QB

图片挂了, 刷新一下呗

每日一题: 2020-11-03

题目: 如图, 已知ABCDABCDO\odot O 的内接四边形, EEBDBD 上的一点, 且有BAE=DAC\angle BAE=\angle DAC.
求证: (1) ABEACD\triangle ABE\backsim \triangle ACD;
(2) ABDC+ADBC=ACBDAB\cdot DC+AD\cdot BC=AC\cdot BD.

图片挂了, 刷新一下呗

参考思路

ABCD\because ABCD 内接于圆OO,
ABE=ACD\therefore \angle ABE=\angle ACD, 又BAE=CAD\because \angle BAE=\angle CAD.
ABEACD\therefore \triangle ABE \backsim \triangle ACD.

(2) 由BAC=EAD,ADE=ACBADEACB\angle BAC=\angle EAD, \angle ADE=\angle ACB\Rightarrow \triangle ADE\backsim \triangle ACB.
ADAC=DECBADBC=ACDE\therefore \frac{AD}{AC}=\frac{DE}{CB}\Rightarrow AD\cdot BC=AC\cdot DE.
ABEACDABAC=BECDABCD=ACBE\triangle ABE\backsim \triangle ACD\Rightarrow \frac{AB}{AC}=\frac{BE}{CD}\Rightarrow AB\cdot CD=AC\cdot BE
将上述两式相加得: ADBC+ABCD=AC(DE+BE)=ACBDAD\cdot BC+AB\cdot CD=AC\cdot (DE+BE)=AC\cdot BD. 得证.

0%