大家来玩OnlineJudge

最近在线上闲逛,给我找到个好东西,相信很多人还不知道,给大家介绍一下。
 有没有觉得学编程到一定阶段就无事可干呢。掌握了基本语法之后,你就不知道做什么好了,莫非要马上写一个AutoCAD或是极品飞车,好像太难了。就象学写作,掌握了大量优美的词句、熟练的语法和丰富的修辞手法,是不是立刻就可以来创作《战争与和平》了。似乎还缺点什么,是的,难道不要先写点随笔散文之类的练练手吗。那么,到哪里去找一些合适的题目来做编程练习呢。最好是有答案或者指导以便自己判断对错的那种。如果你也在找这样的东西,那么来试试OnlineJudge系统吧。
 Online Judge系统(简称OJ)是一个在线的裁判系统。她可以对程序原代码进行编译和执行,并通过预先设计的测试数据来检验程序原代码的正确性。
 一个用户提交的程序在Online Judge系统下执行时将受到比较严格的限制,包括运行时间限制,内存使用限制和安全限制等。用户程序执行的结果将被Online Judge系统捕捉并保存,然后再转交给一个裁判程序。该裁判程序或者比较用户程序的输出数据和标准输出样例的差别,或者检验用户程序的输出数据是否满足一定的逻辑条件。最后系统返回给用户一个状态。----以上部分文字摘自同济Online Judge系统的说明。
 这样的解释必定让你云里雾里。让我换个说法,看着我的嘴,听好。Online Judge系统就是一个在线的、由计算机批卷的、有成绩排名的编程题库。题目主要是数据结构和算法方面,难度由浅入深。你随时可以参与答题。
 基本上Online Judge系统是这样玩的。先找到一个可用的系统,注册个用户登录,然后从题库里选道题。考虑适当的算法,用你熟悉的语言编程表达出来。上线,把你的源代码贴到指定的位置,然后等待。系统会在服务器端编译运行你的程序,再使用预先准备好的数据进行测试。如果符合了题目要求,恭喜你,你完成了这一题,得分计入你的个人帐号。你可以继续下一题。通常答题没有时间地点的各种限制,只要你独立完成就行了。你甚至可以作弊从别的地方抄答案,机器不会和你计较,不过那样也实在没什么意思。
 说到Online Judge系统,要先介绍ACM大赛。由美国计算机协会(ACM Association for Computing Machinery)发起和组织的ACM国际大学生程序设计竞赛(简称ACM/ICPC)是目前世界上规模最大的计算机学科赛事。他发起于1977年,要比国际信息学奥林匹克竞赛(IOI)的首届还早12年。世界各地的知名大学都会派队参加,每年的下半年在各个洲进行预赛,全世界大约有60多个队可以参加最后的决赛。谈到这一点,十分让人骄傲,我国迄今在ACM取得的最好成绩是冠军,由上海交通大学在2002年三月取得。
 无论从哪个角度看,Online Judge系统都可以看成IOI或ACM的训练题库。我一直怀疑,Online Judge系统最早可能就是ACM的评分系统,但这一点无法确认。可以确认的是,现在很多大学开设了Online Judge系统,用以训练自己的ACM/IOI队员。系统通常摆放在他们的网站上,同时对公众开放。而其中规模最大、参与人数最多、水平最高的,当属 University of Valladolid 开设的OJ系统(简称UVA),据称那就是ACM官方设置的。全世界有n十万的兄弟姐妹们在搞上面的题目,除了个人排名,还有国家地区排名。目前,中国大陆排第四,第三名是中国台湾省,第二名是孟加拉,第一名是欧共体。香港特区也在前十名,位列第九。说是训练题库,题目的难度可不低。最基础的大约有二十个左右题目,纯属熟悉系统环境用,比较难的题,程度与ACM的试题不相上下。只要意识到即使有这么多人在做,还是有个别题目至今无人能够解答的情况,你对UVA的OJ系统的难度也就有了大体的估量吧。同时题量也不小,大约是1800题。按民间的说法,如果你能够完成总量的80%到90%,试着向微软或者IBM等大公司的技术研发部投一封求职信吧,应该会有所收获哦。当然不是每个OJ系统难度都那么高,也不是每个OJ的题库都那么庞大,不过100~200题的量总是有的。
 最后几点,OJ通常支持C C++ java 和pascal等语言,对编译器也有所限制,题目基本不涉及GUI图形界面,具体情况,不同的OJ有所不同,要看他的说明。 
 相信你已经跃跃欲试了,那我就给你介绍几个可去的OJ吧。

同济大学的Online Judge         强烈建议初学者和新手前往的地方。大概开站不久,题目难度总体较低,题量较少。而且页面和题目都是中文的。
浙江大学的Online Judge
北京大学的Online Judge        毫无疑问,中级水平偏上一些,哪一个都是值得好好待一阵的地方。但是题目和页面都是英文的,多查字典吧。
西班牙的Universidad de Valladolid           就是著名的UVA啦
俄罗斯乌拉尔大学           不得不承认,老外的题目水平的确高。还犹豫什么,有能力就出去为国争光啦。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值