转载出处:http://www.cnblogs.com/yangqingli/p/4931360.html
什么是OJ
Online Judge系统(简称OJ)是一个在线的判题系统。用户可以在线提交程序源代码,系统对源代码进行编译和执行,并通过预先设计的测试数据来检验程序源代码的正确性。
Wrong Answer : 答案不完全正确.
Time Limit Exceeded : 运行超出时间限制.
Memory Limit Exceeded : 超出内存限制.
Output Limit Exceeded: 输出超过限制.
Runtime Error : 运行时错误.
前言
本文对国内外大家常用的几十个在线测评网站做整理。每个测评网站都有一至两张图片,分别是主页和题库的截图。从图片上可以清晰地看出不同测评网站的风格,甚至是题目难度,方便大家选择适合对口味的测评网站。作者才疏学浅,无法对每个测评网站做出一句话或是更多的客观评价,只是在自己所熟悉的测评网站下说了几句自己的见解。
关于测评网站的分类,作者曾想过很多的方式,譬如按照中国外国分或是按照面向对象主要是信息竞赛生或是ACM选手分,无论怎样都无法得到一个很好的效果。网络时代把大家连成一个整体,应算法竞赛之运而生的书籍,网站,辅导机构都是相通的。更何况,许多读书时参加信息学竞赛的学生以后也往往会成为大学里ACM校队的主力。一番纠结后,作者想了一个还算折中又鄙浅的分类方法,本文中的测评网站主要分为以下几类:
推荐OJ:用户数多,题目质量高,测评机稳定,容易找到高质量题解或与人交流;
学院派OJ:各大学中学自己维护更新的测评网站,部分对外界开放;
自由型OJ:由社会组织,公司,志愿者运行,部分网站的稳定和更新得不到保证;
比赛类OJ/社区型OJ/其他的国外OJ:定期组织比赛;
提高型OJ:专业性较强,大部分题目思维难度较高
学习型OJ:网上提供编程教育的网站附带的试题库和测评机。
OJ的使用方法
if 你的学校里有自己的oj then 就刷那上面的题即可
else
if 你是一个ACMER then
按准POJ或HDU猛刷
else
if 你是一个OIER then
按准CODEVS或洛谷猛刷
else
从推荐OJ里选一个适合自己难度的OJ猛刷
总而言之,一定要有一个固定的刷题OJ,遇上特殊的自己刷的测评网站上没有的题目时,再去别的测评网站看看。
推荐OJ
北京大学POJ http://poj.org/
中国最受欢迎OJ之一,各式各样各种难度的题目都有。
杭州电子科技大学HDUOJ http://acm.hdu.edu.cn/
中国最受欢迎OJ之一,题目数量多,来源广。
UVA https://uva.onlinejudge.org/
全球最大最老牌的OJ之一,题目数量堪称之最。浏览需要FQ。
codeVs http://codevs.com/
当今最大中文OJ之一,它的天梯功能可以让选手按照难易程度练习各种算法。codevs也是我最早接触到的OJ,题库丰富,难度适中,可以无条件查看当前出错点的答案。据悉网站管理员WPH95以后想把CODEVS向AI等方面扩宽发展。具体怎样不得而知,不过它作为OJ的强大行还是毋庸置疑的。
还请忽视我的刷题记录
OJ上的后起新秀,迅速占有了很大的OJ评测份额,它的试炼场功能和CODEVS的天梯功能相同,可以让选手按阶段做题提高。个人认为题目难度分类有些不太恰当,为何同是“普及+提高-”的题目难度差异那么大呢?支持在线IDE编程。其代码公开计划可以让提交此题并达到60分且同加入代码公开计划的人查看他人的代码。
(账号记录也请忽视,忽视哈。)
大视野在线评测BZOJ http://www.lydsy.com/JudgeOnline/
题目难度多为省选级及以上,但有一部分题目需要购买权限才能访问。
UOJ http://uoj.ac/
举办NOIP难度的UER和省选难度的UR。赛题质量极高,命题人大多为现役集训队选手。
清橙评测tsinsen http://www.tsinsen.com/
集训队作业网站。近几年的内容还没有公开。
ACdream http://acdream.info/
学院型OJ
湖南师大附中 vijos https://vijos.org/
学军中学OJ
http://www.hzxjhs.com:83/
注册完顺手写了一个背包居然过了O(∩_∩)O
河南实验中学OJhttp://cojs.tk/cogs/index.php
南阳理工学院OJhttp://acm.nyist.net/JudgeOnline/problemset.php
北大在线评测http://openjudge.cn/
好像是许多大学创办比赛提交作业的场所。随着2015年NOI网站公布了NOIP考试将从本网站的NOI题库小组抽取题目后,详细这个网站会迎来很多OIERS的访问。
八一中学码酷http://www.marcool.net/home/index.htm
浙江大学ZOJ http://acm.zju.edu.cn/onlinejudge/
西南科技大学SWUST OJ http://acm.swust.edu.cn/
只供校内学生注册
建兰中学OJhttps://school.jloj.cn/oj-plus/
天津大学OJhttp://acm.tju.edu.cn/toj/
TIMUS OJ http://acm.timus.ru/
南开大学OJhttp://acm.nankai.edu.cn/
典雅的界面果断好评
华中科技大学OJhttp://acm.hust.edu.cn/
齐齐哈尔大学OJhttp://www.smartoj.com/
浙江工业大学OJ
http://acm.zjut.edu.cn/system/messageInfoAction.do?method=initIndexPage
萨拉托夫州立大学OJhttp://acm.sgu.ru/
电子科技大学http://acm.uestc.edu.cn/#/
上海交大OJhttp://acm.sjtu.edu.cn/OnlineJudge/
中科大OJhttp://acm.ustc.edu.cn/ustcoj/
宁波工程学院https://ac.2333.moe/
大哥你家网站,卡哇伊诶!
北京师范大学http://acm.bnu.edu.cn/v3/
自由型OJ
九度OJhttp://ac.jobdu.com/problemset.php
RQNOJ http://www.rqnoj.cn/
RQNOJ,是国内OJ(信息学在线测评)开放平台开发和运行的先导
tyvj http://tyvj.cn/
主要面向信息学竞赛,09年成立,现在好像在清北学堂的手中。(话说那大犇出没神马的我们去北京清北的时候挂上去的,现在居然还没撤下来)
比赛类OJ/社区型OJ/其他的国外OJ
Codeforces是一家为计算机编程爱好者提供在线评测系统的俄罗斯网站。该网站由萨拉托夫国立大学的一个团体创立并负责运营。
topcoder社区得到了数百万编码者的支持,因此你可以了解到很多挑战性的项目,基于此你还可以为自己赚去额外的报酬。你可以每天或每周参与编码挑战,该社区提供的项目极具有挑战性,对于初学者而言有一定的难度,但却值得一试。
CodeChef由Directi创建的一个开发者社区,为开发者提供实践、竞赛和进步的平台。该社区拥有大量的编码竞赛问题,允许访问此前别人解答编码挑战赛的源码。该社区也设置了难易度,你可以根据自身条件选择挑战。
Bestcoder
http://bestcoder.acmcoder.com/
克罗地亚coci
波兰MAIN
波兰SPOJ
日本JOI
http://www.ioi-jp.org/index.html
LIGHTOJ http://www.lightoj.com/login_main.php?url=index.php
AOJ http://judge.u-aizu.ac.jp/onlinejudge/
挑战型OJ
欧拉计划PE https://projecteuler.net/
Project Euler可能是全球最流行的编程挑战网站,项目推出初期就拥有几十万的用户,足以表明其影响力有多大。Project Euler致力于鼓励、挑战并且发展解题技巧,并为那些对迷人的数学世界有兴趣的人提供乐趣。
leetcode 是一个美国的在线编程网站,上面主要收集了各大IT公司的笔试面试题,对于应届毕业生找工作是一个不可多得的好帮手。
这个网站的的好处在于它会告诉你测试数据以及你的输出和正确的输出是什么,方便大家调试学习。目前,只支持C++和Java两种语言。
另一个很好的地方在于提供了2个独立的代码窗口,分别编译运行。一个自己玩的开发窗口,一个提交代码的窗口,可以在第一个窗口里测试各种拿不准的功能点。
题库包括algorithms ,database, shell三部分,以下是algorithms(算法)的题库部分。
HackerRank网站是为编码程序员们提供一个以编码谜题和现实生活中遇到的编码难题为基础的新兴的社交平台。HackerRank公司得到了风险投资公司Y Combinator 的资金支持。
在这个社区中,他们提供了各种编码谜题、游戏病毒和现实中的编码难题及挑战,让黑客们在该社区中进行交流讨论,接受挑战。HackerRank就如这个名字所暗示的一样,它同时还提供了在线排行榜和其他的竞争元素。
更多请移步:
挑战最强大脑——来自全球的14个编码社区
http://www.csdn.net/article/2014-04-21/2819404-coding-challenges/1
学习型OJ
后记
在搜集各大OJ的过程中发现一个很有趣的现象,面向信息学竞赛的OJ主要是汉文的,毕竟比较注意用户体验和网站风格设计,相比之下,面向ACM的OJ更多地采用英文题目,网站风格简练,并且大部分无法查看错误点,或许这就是常说的有需求有市场,一切为了用户吧。
本文是作者用短短几天的时间做出来的,有所错误,纰漏在所难免,希望大家多多包涵,批评,斧正,提供新的OJ资料,在下不胜感激。
最后,祝大家在算法竞赛,在各自的领域中取得傲人的成绩。