如何使用OJ来提高编程能力

接触编程语言的最初阶段是很痛苦的,感觉什么都看不懂,不过没关系,没有人是一生下来便能熟练的掌握某种技能。

写这篇短文的初衷很简单,是想把我在为数不多的时间里所接触到的一些好的平台,方法分享给大家。今天我们用较小的篇幅来讲一讲OJ。

什么是OJ?

OJ是Online Judge系统的简称,用来在线检测程序源代码的正确性。用户可以在线提交程序多种程序(如C、C++、Java、Python)源代码,系统对源代码进行编译和执行,并通过预先设计的测试数据来检验程序源代码的正确性。

OJ的起源

Online Judge系统最初使用于ACM-ICPC国际大学生程序设计竞赛和OI信息学奥林匹克竞赛中的自动判题和排名。现广泛应用于世界各地高校学生程序设计的训练、参赛队员的训练和选拔、各种程序设计竞赛以及数据结构和算法的学习和作业的自动提交判断中。

OJ有许多,并且是对外开放的,其中以高校的OJ系统居多,国内出名的OJ有 POJ/ZOJ/HOJ/等等等,今天我们要讲的是一个类似OJ的教学辅助平台,他叫PTA(Programming Teching Assistant,程序设计类实验辅助教学平台)https://pintia.cn/

为什么推荐PTA,因为里面有大量的初级试题,能有有效的帮助新手熟悉语言的语法规则。(篇幅有限,跳过注册等环节的介绍)

如何使用PTA?

在你注册之后,会看到许多题目集,选取合适的可用的就行。

我们选取中M2017秋C入门和进阶练习集中的试题为例。

题目要求,以及给出了输入输出示例,你只需要根据题目要求编写程序代码即可,注意数据输入输出格式。可参考输入输出事例。

你可以在你的IDE中完成程序代码的编写,然后复制到提交框中,选取语言类型,提交给在线评测系统。如下:

提交之后等待2-3s评测系统便会返回评测结果,你可以查看自己的程序是否符合题目要求,查看测试数据是否通过,以及得分情况,如果出现错误,则根据报错信息,以及测试点提示,继续在你的IDE中调试。

天梯系统

针对不同的题目集,PTA都提供了一个排名系统,在这里你可以看到你的具体排名,以及可以看到其他同学的提交记录。

平均每个题目集参与人数数千到上万人不等。

同时也可以查看每道题目的提交数以及通过率

怎么样,寒假要不要试下水题棒刷个前10%?

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180120G0N7JV00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券