Skip to content
| Marketplace
Sign in
Visual Studio Code>Education>OI Hydro 题目导入New to Visual Studio Code? Get it now.
OI Hydro 题目导入

OI Hydro 题目导入

PureAutumn

| (0) | Free
在 VS Code 内登录 HydroOJ(如 yl503.yali.edu.cn),一键把题面与样例导入到 Problems/ 目录
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

OI Hydro 题目导入

在 VS Code 里登录 HydroOJ(如校内 OJ yl503.yali.edu.cn),一键把题面和样例导入成本地题目目录,直接配合 C++ 编译/测试使用。

适用于任何基于 HydroOJ 的站点,不限于某一所学校。

功能

  • 编辑器内登录:用户名 / 密码只在 VS Code 输入框里输入,直接提交给 OJ 本站,不经过任何第三方
  • 只保存会话 Cookie:登录态存在 VS Code 的 SecretStorage(系统加密),不落明文文件
  • 一键导题:粘贴题目链接或题号,自动生成
Problems/<题号>/
├── main.cpp      ← 从工作区 templates/main.cpp 复制(已存在则不覆盖)
├── problem.md    ← 题面(自动打开右侧预览)
├── 1.in / 1.out  ← 样例 1
└── 2.in / 2.out  ← 样例 2 …
  • 自动解析:优先按 Hydro 返回的 JSON 取题面(Markdown)、时限、内存、标签;样例从题面里的「输入样例 / 输出样例」代码块配对
  • 多根工作区安全:写入目录优先选包含 templates/main.cpp 的文件夹,不会误写到别的根目录
  • 可排查:OI: 查看导入日志 查看每次请求与解析结果;解析失败会保留 raw_problem.html

使用方法

  1. 用 VS Code 打开你的 OI 工作区(含 Problems/、templates/)
  2. 点右下角状态栏 「Hydro: 未登录」,或 Ctrl+Shift+P → OI: 登录 HydroOJ
  3. 输入用户名、密码(密码为掩码输入)
  4. Ctrl+Shift+P → OI: 导入题目,粘贴题目链接(如 https://yl503.yali.edu.cn/d/J2026/p/1)或直接输入题号
  5. 导入完成后 problem.md 自动在侧边预览,1.in/1.out 可直接用于本地测试

命令

命令 说明
OI: 登录 HydroOJ 输入账号密码,保存会话 Cookie
OI: 导入题目(粘贴链接/题号) 抓取题面与样例并生成题目目录
OI: 退出登录 清除本地登录态
OI: 查看导入日志 查看请求与解析细节

设置

设置项 默认值 说明
oiHydro.baseUrl https://yl503.yali.edu.cn 站点地址;HTTPS 连不上时可改成 http://
oiHydro.domainPath d/J2026 Hydro 的域名路径;只输题号时拼成 {baseUrl}/{domainPath}/p/{id},根域名部署请留空
oiHydro.problemsDir Problems 题目目录(相对工作区根目录)
oiHydro.autoOpenPreview true 导入后自动打开 Markdown 预览

安全说明

  • 密码不保存:登录成功后只保留会话 Cookie(HttpOnly 会话级别)
  • Cookie 存放在 VS Code SecretStorage,由操作系统凭据保护,扩展不会写到工作区文件
  • 所有网络请求只发往 oiHydro.baseUrl 指向的站点

已知限制

  • 依赖站点返回结构与 Hydro 版本(本扩展在 Hydro 4.58 上验证)
  • 题面中的图片若需要登录才能访问,Markdown 预览里可能显示不出来
  • 样例依赖题面里存在「输入样例 / 输出样例」代码块;没有的话不会生成 .in/.out

反馈

遇到解析问题,请提供 OI: 查看导入日志 的输出,以及题目目录下生成的 raw_problem.html(如有)。

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft