任哪个人在免费注册后都足以浏览标题和交给自己的解答程序,会算法但不可以AC的

菜鸟切OJ,只挑简单题做

在OJ上做题须求哪些基础?

OJ是为职业程序员准备的,对语言基础需要较高。各个常用的数据结构和算法也必要有自然的利用经验。UVa
OJ的题材难度差距悬殊,最大的费力就是享有问题并从未按难度排序,由此至少存有很快确定算法难度的力量,才能接纳适合自己的标题。个人推举应用C++做题,一是足以选取卓殊有利于的STL,二是在网上有大量的有关资源,此外语言的解答比较少。

 

对菜鸟来说难点有两种:会算法且能AC的,会算法但不可能AC的,不会做的

什么是UVa OJ?

UVa
OJ
(英文)是西班牙王国(The Kingdom of Spain)巴拉斯维加斯Dolly德大学提供的一套在线评判系统(OJ)。它提供多达近3000道ACM算法题,而且还在加码。任哪个人在免费注册后都得以浏览标题和提交自己的解答程序。服务器会自行编译你付出的代码,用特其余多少(不是题材中的Test
Case)进行测试,并当即做出评定。倘使程序在界定标准内运行出符合必要的结果,系统会付出运行时刻和下列结果:

  • 正确(Accepted, AC)
  • 答案错误(Wrong Answer, WA)
  • 用时超越限制(提姆e Limit Exceed,
    TLE)
  • 输出超过限制(Output Limit Exceed,
    OLE)
  • 内存当先限制(Memory Limit Exceed,
    MLE)
  • 运作时不当(Runtime Error,
    RE),一般是数组越界访问引起的
  • 出口格式错误(Presentation Error,
    PE)
  • 编译出错(Compile Error, CE)

UVa OJ帮助的编程语言包含C、C++、Pascal和Java。现在全世界很多高校都提供OJ系统,中国也有诸多,比如武大的PKU
OJ
,浙大的ZOJ,同济的TOJ等等。但综合比较起来,个人觉得仍旧UVa的种类更加完美,标题也更完善。

 

教主提交WA了,Judge登时矫正数据

再有哪些要求小心的地方?

OJ的评议万分严厉,做题时必然要过细审题,重点看“Input”和“Output”段落的必要。固然OJ会用特其余输入数据进行测试,但相对不会超过题目中加以的限定。而题材中尚无特意的表达的地方则是怎么状态都可能出现,那点要相当小心。输出时一个空格也不能多,假使须求的结果是用空格分隔的一行数字,那么在行尾多了一个空格就很可能得到WA或着PE。

即使你收获了一个题的Accepted,在浏览界面那道标题标底色就会变绿,当你的账号里满版飘绿时自然会非凡有成就感。即便您被卡在一道题始终得不到AC,请按梯次尝试上面多少个措施:

  1. 再次认真的读题,检查是还是不是按标题的渴求处理输入数据,是还是不是按须求的格式输出,更加令人瞩目末尾是还是不是有结余的空格。
  2. 仔细检查你的代码是或不是处理了难点从没范围的“格外”输入数据,最好能自己模仿一些恐怕的格外数据来拓展测试。
  3. 另写一段代码生成1000000组自由数据对您的算法进行测试,并用其它一段代码进行验证。
  4. 访问UVa
    OJ的论坛
    (英文)搜索类似难题,一般都足以找到更多的测试数据。也可以发贴寻求救助。
  5. 在谷歌(Google)上搜索题目名称,一般都得以搜到能AC的代码。把它加到你的主次中,然后用豁达数据测试你的代码和不易代码在运转结果上的异同。
  6. 设想你是否选拔了“非主流”的算法或思路。尽管OJ不会检查你的代码,但偶尔对少数相当情状的不相同处理,会招致错误的结果。
  7. 万一上述措施都不可以一举成功您的难题,欢迎给自家发Email(地址见侧栏),我甘愿和您一起商讨那么些难点!(我早就揭橥过的难点则请仔细阅读文章,谢谢!)

 

教主队半场首个挂起绿球,然后全场到结尾也唯有一个绿球

本身的布置

事实上自己很已经做过OJ标题了,但尤其惭愧的是自家一贯没有勇气和心志持之以恒下来,希望从现在起首始补救还不算太晚。这一种类著作将记录自己前进的长河,每篇的格式都固定,包含原标题及翻译、思路分析和自己的解答代码。发表一篇标题须要花大批量的时日,有些难点或者并不圆满(比如还没有翻译),敬请谅解。我安顿每成功50题就休息一段时间,把前边发的稿子整理两次,也终于给协调做一回复习。

我在写每篇小说时都会力求以最明确的主意把标题讲通晓,因而可能会比较罗嗦。代码的诠释也会丰盛详尽,让即使没有C++/STL语言基础的人也能一眼看懂。但本身仍旧愿意您先不要看分析和代码,自己做一下这么些难点。直接把代码粘到UVa
OJ上是未曾其余意义的,事实上这一步我曾经替你做过了。能看懂并不意味着能写出来,手熟才是最重大,切莫眼高手低。唯有当你实在没有思路或着一向卡到WA,分析和代码可以为你提供部分参考。

对教主来说难题有二种:能AC的,数据有错的

大牛只用自己写的模版

 

教主一般不出口

大牛面对共同难点,算了算时间复杂度不对,或者评释出是NP难,果断扬弃

 

菜鸟喜欢收集各类模板

大牛喜欢说自己把某部OJ做了百分之八九十

大牛平时在论坛和QQ上灌水

菜鸟面对一道难点,直接暴搜

教主直接无视

对大牛来说难点有三种:会做的,不会做的

 

大牛AC了一道难点,会写一篇解题报告,第一句话肯定是:那题其实简单

 

 

大牛提交WA了,找了N久找不不可看重时,写暴力程序仍然求别人的AC程序对拍

菜鸟喜欢YY那种分析菜鸟、大牛和教主的区分的作品

 

大牛队半场首个挂起黄球,然后发现大概与此同时有此外几支大牛队也挂起了黄球

菜鸟提交WA了,找了N久找不失误时,在论坛大骂数据有错,但是没人理

菜鸟喜欢说自己做了几十几百道题

菜鸟AC了一道难点,巴不得召告天下

 

教主早就不切OJ了

大牛切OJ,成套成套地做

菜鸟队看插足上90%的大军挂起了红球,伊始找红球是哪道题

 

 

教主一般不露面

菜鸟平日在论坛和QQ上求助

教主面对同步难题,说,尽管自己不会做,但AC仍然不是难题的

大牛看完那样的小说会笑一笑,懒得回帖

教主不用模板,但他实地写的次序会被别人作为模板

教主AC了一道难点,好像什么都没发生过