🌟 Wiki of OI / ICPC for everyone. (某大型游戏线上攻略,内含炫酷算术魔法)
Go to file
Pologue 1a67e168ae
fix(cpp-other-langs.md): typo (#5467)
fix(cpp-other-langs.md): 错字修改

“由于面向对象由许多非常好的特性”->“由于面向对象有许多非常好的特性”
2024-03-19 12:51:57 +00:00
.github chore: upgrade to typst v0.11.0 (#5463) 2024-03-18 10:34:04 +08:00
docs fix(cpp-other-langs.md): typo (#5467) 2024-03-19 12:51:57 +00:00
hooks refactor: upgrade to new version of theme 2022-12-13 11:14:54 +08:00
mkdocs-material@9e9affd98e feat: update theme (#5236) 2023-11-01 04:08:29 +00:00
patches docs: add docs for patch 2023-02-18 07:57:07 +08:00
scripts chore(celebration): also celebrate on multiple of 5k (#5414) 2024-02-16 13:58:31 +00:00
.bashrc fix(intro/docker-deploy, .bashrc, Dockerfile): 解决本地部署服务器时无法使用其他设备访问的问题 (#4195) 2022-08-10 10:54:31 +00:00
.clang-format chore: upgrade remark-clang-format (#3806) 2022-02-13 10:36:07 +08:00
.gitattributes Update .gitattributes 2018-11-04 10:35:21 +08:00
.gitignore feat: dark mode (#4695) 2023-02-10 06:28:30 +00:00
.gitmodules feat: dark mode (#4695) 2023-02-10 06:28:30 +00:00
.gitpod.yml feat: add gitpod 2020-03-28 17:26:49 +08:00
.htmltest.yml fix(_redirects): better redirect HTML & fix redirects (#4689) 2023-02-13 00:47:08 +08:00
.mergify.yml ci(Mergify): configuration update 2022-07-31 00:01:10 +08:00
.prettierrc refactor: migrate NPM to Yarn and add TypeScript and Prettier 2022-07-10 17:26:46 +08:00
.remarkignore update:(binary-set.md):更新二进制集合操作 (#4285) 2022-09-15 17:06:04 +00:00
.remarkrc refactor(docs): format C++ code in tabs using remark-tabbed and clang-formatter (#5167) 2023-10-04 21:50:08 +08:00
CITATION.bib chore: add citation file 2022-06-14 17:10:52 +08:00
CODE_OF_CONDUCT.md fix(CODE_OF_CONDUCT.MD): fix typo (#5391) 2024-02-02 23:10:05 -06:00
Dockerfile fix(intro/docker-deploy, .bashrc, Dockerfile): 解决本地部署服务器时无法使用其他设备访问的问题 (#4195) 2022-08-10 10:54:31 +00:00
Pipfile feat: update theme (#5236) 2023-11-01 04:08:29 +00:00
Pipfile.lock feat: update theme (#5236) 2023-11-01 04:08:29 +00:00
README.md feat: dark mode (#4695) 2023-02-10 06:28:30 +00:00
mkdocs.yml refactor: 重写 Lagrange 插值 (#5387) 2024-02-05 17:23:06 +08:00
netlify.toml ci: switch to node 16 (#4055) 2022-07-14 16:47:14 +08:00
package.json use remark-tabbed v0.1.0 rather than git dependency (#5374) 2024-01-24 19:30:07 +08:00
tsconfig.json refactor: worker pipeline for HTML post-processing 2022-07-15 12:54:08 +08:00
yarn.lock use remark-tabbed v0.1.0 rather than git dependency (#5374) 2024-01-24 19:30:07 +08:00

README.md

Word Art

欢迎来到 OI Wiki

Gitpod Ready-to-Code GitHub Actions Uptime Robot Status Telegram QQ GitHub watchers GitHub stars


内容

编程竞赛发展多年,难度越来越高,内容越来越复杂,而网上资料大多零散,初学者往往并不知道如何系统地学习相关知识,需要花费大量时间摸索。

为了方便热爱编程竞赛的小伙伴更好地入门2018 年 7 月份,OI Wiki 迁移至 GitHub。随着 OI Wiki 的内容不断完善,越来越多的小伙伴参与其中。

OI Wiki 致力于成为一个免费开放且持续更新的知识整合站点,大家可以在这里获取关于 编程竞赛 (competitive programming) 有趣又实用的知识,我们为大家准备了竞赛中的基础知识、常见题型、解题思路以及常用工具等内容,帮助大家更快速深入地学习编程竞赛。

目前,OI Wiki 的内容还有很多不完善的地方,知识点覆盖不够全面,存在一些低质量页面需要修改。OI Wiki 团队以及参与贡献的小伙伴们正在积极完善这些内容。

关于上述待完善内容,请参见 OI WikiIssues 以及 迭代计划

与此同时,OI Wiki 源于社区,提倡 知识自由,在未来也绝不会商业化,将始终保持独立自由的性质。


部署

本项目目前采用 MkDocs 部署在 oi-wiki.org

我们在 status.oi-wiki.org 维护了一份镜像站列表,它们的内容和 oi-wiki.org 都是相同的。

当然,也可以在本地部署。(需要安装 Python3 和 Pipenv

如果遇到问题,可以查阅 F.A.Q. 来了解更多信息。

git clone https://github.com/OI-wiki/OI-wiki.git --depth=1

cd OI-wiki

# 安装 mkdocs
pipenv install --pypi-mirror https://pypi.tuna.tsinghua.edu.cn/simple/

# 使用我们的自定义主题Windows 下请使用 Git Bash 执行)
# 安装主题时将连接网络下载资源,可通过以下配置项控制下载链接
# .gitmodules:
# - url
# scripts/pre-build/install-theme-vendor.sh:
# - MATHJAX_URL
# - MATERIAL_ICONS_URL
./scripts/pre-build/install-theme.sh

# 两种方法(选其一即可):
# 1. 运行一个本地服务器,访问 http://127.0.0.1:8000 可以查看效果
pipenv run mkdocs serve -v

# 2. 在 site 文件夹下得到静态页面
pipenv run mkdocs build -v

# 获取 mkdocs 的命令行工具的说明(解释了命令和参数的含义)
pipenv run mkdocs --help

我们现在在服务器端渲染 MathJax如果希望实现类似效果可以参考 build.yml。(需要安装 Node.js

镜像

# Gitee 码云 上的镜像仓库和 GitHub 仓库的内容相同
git clone https://gitee.com/OI-wiki/OI-wiki.git

离线版

可以使用 gh-pages 分支的内容

git clone https://gitee.com/OI-wiki/OI-wiki.git -b gh-pages

本地启动一个 http 服务器可能会更方便一些。

# 如果是 python3
python3 -m http.server
# 如果是 python2
python2 -m SimpleHTTPServer
# 有些环境下找不到名叫 python3/python2 的可执行文件,不妨运行 python 试试

Docker

详见 Docker 部署


如何参与完善 OI Wiki

我们非常欢迎你为 OI Wiki 编写内容,将自己的所学所得与大家分享。

具体的贡献方式在 如何参与


版权声明

知识共享许可协议
除特别注明外,项目中除了代码部分均采用(Creative Commons BY-SA 4.0) 知识共享署名 - 相同方式共享 4.0 国际许可协议及附加的 The Star And Thank Author License 进行许可。

换言之,使用过程中您可以自由地共享、演绎,但是必须署名、以相同方式共享、分享时没有附加限制,

而且应该为 GitHub 仓库点赞Star

而如果你想要引用这个 GitHub 仓库,可以使用如下的 bibtex

@misc{oiwiki,
  author = {OI Wiki Team},
  title = {OI Wiki},
  year = {2016},
  publisher = {GitHub},
  journal = {GitHub Repository},
  howpublished = {\url{https://github.com/OI-wiki/OI-wiki}},
}

鸣谢

本项目受 CTF Wiki 的启发,在编写过程中参考了诸多资料,在此一并致谢。

非常感谢一起完善 OI Wiki小伙伴们 和为 OI Wiki 捐赠的 朋友们

特别感谢 24OI 的朋友们的大力支持!

感谢 北大算协 和 Hulu 的支持!