术→技巧, 研发

国内外编程OJ网站整理

钱魏Way · · 2 次浏览

国内OJ平台

经典高校OJ

POJ(北京大学在线评测系统)

POJ由北京大学建立于2003年,是国内历史最悠久的在线评测系统之一。平台题目以英文为主,难度梯度设计科学,涵盖从基础到高阶的各类算法问题。POJ定期举办在线比赛,提供实战演练机会,评测数据设置较为合理,既能够有效检验算法正确性,又不会过度严苛。相对来说,POJ的评测数据比ZOJ略弱,有时同样代码在ZOJ上判WA而在POJ上能AC。

  • 网址:http://poj.org/
  • 适合人群:算法竞赛入门到中级的选手;希望接触英文题目的学习者
  • 评价:题目量中等,难度适中,是国内最经典的OJ入口之一

ZOJ(浙江大学在线评测系统)

ZOJ建立于2001年,是中国最早建立的在线评测系统之一,被誉为”高手云集”的老牌劲旅。平台访问速度快,题目覆盖全面的算法知识体系,题目质量高。由于吸引了大量高水平选手在此交流,ZOJ常被视为检验真实算法能力的理想场所。

  • 网址:https://zoj.pintia.cn/home
  • 适合人群:有一定算法基础的进阶选手
  • 评价:国内最早的OJ,题目质量高,但如今活跃度有所下降

HDU Online Judge(杭州电子科技大学在线评测系统)

HDU建立于2005年,是杭州电子科技大学的在线评测系统,以收录多校联合训练题目而闻名。平台的题目数量庞大,尤其是历年ACM-ICPC多校联赛题目收录较为完整。

  • 网址:http://acm.hdu.edu.cn/
  • 适合人群:ACM竞赛训练选手
  • 评价:多校赛题资源丰富,适合冲刺区域赛和ICPC的训练

教学导向OJ

OpenJudge / 百练

OpenJudge始于2005年,由POJ团队开发,是一个小组评测平台。旗下的”百练”题库可以提交POJ的题目,方便用户直接在一个平台上练习。平台支持教师创建小组、布置作业、组织考试等功能。

社区化OJ

洛谷(Luogu)

洛谷始于2013年,是当前国内用户量最大、社区最活跃的OI在线评测平台。平台各类OI真题和习题收录全面,从NOIP到省选乃至NOI级别的题目都有覆盖。洛谷提供智能题目推荐、题解讨论区、在线IDE等功能,并设有会员体系提供高级教育服务。平台定期举办原创比赛,氛围活跃。

  • 网址:https://www.luogu.com.cn/
  • 适合人群:OI选手(从入门到省选水平)、算法竞赛爱好者
  • 评价:国内OI社区生态最完善的平台,题目分类清晰、难度标签准确,新手友好度极高,是大多数国内OIer的首选

Comet OJ

Comet OJ始于2018年,旨在为广大算法爱好者提供竞技、练习、交流的平台。平台经常举办原创性的高质量比赛,题库较为丰富,题目设计新颖。

  • 网址:https://www.cometoj.com
  • 适合人群:追求高质量原创题的算法爱好者
  • 评价:比赛质量高,但日常活跃度不如洛谷

LibreOJ

LibreOJ始于2017年,基于开源项目Syzoj构建,”Libre”取自由之意。平台最具特色的是所有题目的测试数据以及提交的代码均对所有用户完全开放,透明性极强。目前由Menci维护。

  • 网址:https://loj.ac/
  • 适合人群:希望研究他人代码、分析测试数据的进阶选手
  • 评价:开源透明,数据可查,题目质量高但数量相对较少

Universal Online Judge(UOJ)

UOJ始于2014年,由著名的算法竞赛选手VFleaKing(VFK)创建,”Universal”取通用之意。UOJ以收录原创比赛题和CCF/THU精选题目见长,整体难度较高,题目质量在圈内口碑极佳。项目也完全开源。

  • 网址:https://uoj.ac/
  • 适合人群:高水平OI/ACM选手
  • 评价:题目难度高、质量精,被誉为”国内题目质量最高的OJ之一”,适合挑战型选手

51Nod

51Nod平台专注于收录具有挑战性的数学题和思维题,题目风格偏重数学推导与思维训练。除了传统的算法题,还包含不少偏数学竞赛风格的内容。

  • 网址:https://www.51nod.com/
  • 适合人群:对数学和思维题感兴趣的选手
  • 评价:题目风格独特,数学题和思维题是亮点,适合锻炼数理逻辑

HydroOJ

HydroOJ始于2021年,是开源项目Hydro的官方站。用户可以在平台上创建自己的”域”,在域中独立使用题库、比赛、讨论等功能模块,具有高度的自定义性和灵活的部署能力,适合团队使用。

  • 网址:https://hydro.ac/
  • 适合人群:学校集训队、培训机构、需要自主搭建OJ的组织
  • 评价:开源灵活,支持自定义域,多校集训使用广泛

Vijos

Vijos始于2005年,是国内较早的开源OJ项目。虽然平台现在活跃度下降,但其开源项目历史影响深远,曾催生了不少衍生OJ。

  • 网址:https://vijos.org/
  • 适合人群:对历史OJ生态感兴趣的学习者
  • 评价:历史悠久,开源影响力大,但当前活跃度已大幅降低

Judge Duck Online

Judge Duck的特色在于其评测精度——可以将评测程序的运行时间精确到微秒级别。不过题目数量较少,定位较为小众。

  • 网址:https://duck.ac/
  • 适合人群:对评测精度有极致要求的选手
  • 评价:评测精度业界领先,但题库容量有限

综合/特殊功能OJ

Virtual Judge

Virtual Judge不是一个传统意义上的OJ,而是一个汇集平台,可以方便地提交其他OJ上的题目,尤其是一些国内访问不太方便的国际OJ。它让用户在一个统一的界面上管理多平台的刷题记录。

  • 网址:https://vjudge.net/
  • 适合人群:需要在多个OJ间切换刷题的选手
  • 评价:跨OJ提交的利器,尤其适合国内用户做UVA等国外OJ的题目

QOJ

QOJ收集了大量国内外OI和ICPC竞赛题目,具有很高的训练参考价值。

  • 网址:https://qoj.ac/
  • 适合人群:备赛ICPC/IOI的选手
  • 评价:竞赛真题收录全面,训练价值高

国际OJ平台

顶级竞赛平台

Codeforces(简称CF)

Codeforces是来自俄罗斯的全球最主流算法竞赛平台,被认为是目前世界上最大的编程竞赛社区。平台每隔一周左右会举办定期的线上比赛(分为Div.1~Div.4不同难度级别),题目质量极高,且支持用户自主出题并申请组织比赛。相比以题库为核心的OJ,Codeforces的算法竞赛更注重锻炼临场发挥和压力下编程能力。其Rating系统被广泛视为衡量算法能力的重要指标。

  • 网址:https://codeforces.com/
  • 适合人群:各级别算法竞赛选手(是全球竞赛训练的核心平台)
  • 评价:全球最好的算法竞赛平台之一,比赛质量高、社区活跃,是提升算法竞争力的”必修课”。国内选手习惯称”打CF”

AtCoder

AtCoder是日本最大的在线评测平台,也是全球第二大算法竞赛OJ。平台提供三种区分度较高的常规比赛:ABC(AtCoder Beginner Contest,适合初学者快速学习常用算法和解题思路)、ARC(AtCoder Regular Contest,中高级难度)和AGC(AtCoder Grand Contest,极高难度)。题目普遍设计精巧、思维含量高,被广泛认为具有很高的”教育意义”。

  • 网址:https://atcoder.jp/
  • 适合人群:从初学者到顶尖选手全覆盖
  • 评价:题目质量极高,ABC非常适合新手快速入门算法竞赛,AGC则是顶尖选手的试金石

经典题库型OJ

URAL(Timus Online Judge)

URAL是俄罗斯乌拉尔联邦大学的在线评测系统,属于老牌OJ。虽然题目总量不多,但每道题目都经过精心筛选,具有典型的代表性。难度设置适中,特别适合算法初学者系统性地建立知识框架。

  • 网址:https://acm.timus.ru/
  • 适合人群:算法初学阶段的学习者
  • 评价:题目虽少但经典,是夯实算法基础的好选择

面试/职业导向OJ

LeetCode(中国区:力扣)

LeetCode起源于2011年美国硅谷,是全球最早的OJ平台之一,现已发展为全球程序员技术面试备战的首选平台。其题目大量来自Google、Facebook等知名互联网公司的真实面试题,被广泛应用于硅谷及全球科技企业的技术面试环节。平台的特色在于:不需要处理输入输出格式,精力可以完全集中在解决算法问题本身上;提交错误时能给出错误的测试数据,便于调试。LeetCode还提供周赛、双周赛等竞赛促进用户练习。

  • 网址:https://leetcode.com/(国际版)/https://leetcode.cn/(力扣中国站)
  • 适合人群:备战技术面试的求职者(覆盖从应届到社招各阶段)
  • 评价:面试刷题的事实标准,题目贴近真实面试场景,学习曲线友好;但竞赛属性较弱

其他特色国际OJ

Kattis

Kattis是一个收录历年ICPC竞赛真题的在线评测平台。从区域赛到世界总决赛的题目都有收录,是备战ICPC的重要资源库。

  • 网址:https://open.kattis.com/
  • 适合人群:ICPC备赛选手
  • 评价:ICPC真题收录完整,是ICPC选手必备资源

DMOJ(Don Mills Online Judge)

DMOJ是加拿大知名的现代在线评测平台,收录了大量加拿大及国际竞赛题目,界面现代化、用户体验良好。

  • 网址:https://dmoj.ca/
  • 适合人群:加拿大竞赛选手及国际算法爱好者
  • 评价:现代UI体验好,题库覆盖面广

CSES Problem Set

CSES是芬兰赫尔辛基大学维护的精选算法题目集,包含约300道系统性的算法和数据结构题目。题目按知识点分类清晰,适合系统性地学习算法知识体系。

  • 网址:https://cses.fi/
  • 适合人群:系统性学习算法的学习者
  • 评价:题目精简而系统,学习导向明确,是很好的算法入门题库

快速对比一览表(精选)

平台 定位 难度 题目语言 比赛频率 最适合
洛谷 国内OI社区 入门~省选 中文为主 定期 OI训练首选
POJ 经典高校OJ 基础~中等 英文为主 定期 算法入门
Codeforces 全球算法竞赛 Div.4~Div.1 英文 每周1-2次 全球竞赛核心
AtCoder 日本算法竞赛 ABC~AGC 日/英 每周 思维训练
LeetCode 面试备战 简单~困难 中/英 每周 技术面试
UOJ 高难度OJ 中高~极高 中文 不定期 高水平挑战
USACO 阶梯训练 入门~中高 英文 系统入门
PTA 高校教学 基础~中等 中文 较少 课程学习
SPOJ 海量题库 全范围 英文 不定期 自由刷题

选择建议

  • OI竞赛路线:洛谷 → Comet OJ → UOJ → Codeforces/AtCoder
  • ACM-ICPC路线:POJ/HDU → VJudge多平台刷题 → Codeforces(核心)→ Kattis/ICPC Live Archive
  • 技术面试路线:LeetCode(核心)→ 牛客网(国内)→ HackerRank
  • 系统入门路线:USACO Training → 洛谷 → AtCoder ABC
  • 数学思维路线:51Nod → Project Euler
  • 高校教学路线:PTA → OpenJudge

参考链接:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注