OJ的介绍以及使用方法

27 篇文章 8 订阅
6 篇文章 0 订阅

OJ系统简介

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

一个用户提交的程序在Online Judge系统下执行时将受到比较严格的限制,包括运行时间限制,内存使 用限制和安全限制等。用户程序执行的结果将被Online Judge系统捕捉并保存,然后再转交给一个裁判 程序。该裁判程序或者比较用户程序的输出数据和标准输出样例的差别,或者检验用户程序的输出数据 是否满足一定的逻辑条件。(PS:OJ系统其实比较傻,所以你的输出内容必须和题面要求的一模一样,甚至空格和回车都得一样,否则就会被判定为错误)最后系统返回给用户一个状态:通过(Accepted)、答案错误(Wrong Answer)、超时(Time Limit Exceed)、超内存(Memory Limit Exceed)、运行时错误(Runtime Error)或是无法编译(Compile Error),并返回程序使用的内存、运行时间等信息。

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

OJ常见判题结果解释(以PTA为例)

这里以PTA系统的判题结果为例,不过各个OJ系统判题结果都是大同小异。至少会包含通过(Accepted)、答案错误(Wrong Answer)、超时(Time Limit Exceed)、超内存(Memory Limit Exceed)、运行时错误(Runtime Error)或是无法编译(Compile Error)这几种结果

结 果说 明
提交成功对于判断、选择、填空题,系统已经接收到您的提交
已被覆盖对于判断、选择、填空题,该提交已经被您的当前提交所覆盖,系统将只评判题目集关闭前对该题目的最后一次提交
等待评测评测系统还没有评测到这个提交,请稍候
正在评测评测系统正在评测,稍候会有结果
编译错误您提交的代码无法完成编译,点击“编译错误”可以看到编译器输出的错误信息
答案正确恭喜!您通过了这道题
部分正确您的代码只通过了部分测试点,继续努力!
格式错误您的程序输出的格式不符合要求(比如空格和换行与要求不一致)
答案错误您的程序未能对评测系统的数据返回正确的结果
运行超时您的程序未能在规定时间内运行结束
内存超限您的程序使用了超过限制的内存
异常退出您的程序在运行过程中崩溃了
非零返回您的程序结束时返回值非 0,如果使用 C 或 C++ 语言要保证 int main 函数最终 return 0
段错误您的程序发生段错误,可能是数组越界,堆栈溢出(比如,递归调用层数太多)等情况引起
浮点错误您的程序运行时发生浮点错误,比如遇到了除以 0 的情况
输出超限您的程序输出了过多内容,一般可能是无限循环输出导致的结果
内部错误评测系统发生内部错误,无法评测。工作人员会努力排查此种错误
运行时错误您的程序运行时发生错误,比如 C 语言数组越界访问或 Python 语言运行时抛出异常等

OJ系统的使用(以PTA为例)

打开PTA的编程题题面界面,会出现如下界面
在这里插入图片描述
对于函数题的话,跟编程题差不多,但是不需要你实现一个完整的程序,只要把题面给的函数接口实现了就行。具体说明如下
在这里插入图片描述

  • 9
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jiangxiaoju

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值