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的编程题题面界面,会出现如下界面

对于函数题的话,跟编程题差不多,但是不需要你实现一个完整的程序,只要把题面给的函数接口实现了就行。具体说明如下

OJ的介绍以及使用方法相关推荐

  1. fanuc机器人四边形编程_FANUC机器人示教编程:原始路径恢复功能介绍与使用方法...

    概要 原始路径恢复功能,是在机器人运行过程中,程序动作由于某种原因被暂停的情况下,当机器人再次启动运行时首先恢复到暂停时位置的一种功能.比如,在暂停后通过手动运行方式使得机器人发生了移动,当再次启动机 ...

  2. 【Android UI设计与开发】第07期:底部菜单栏(二)Fragment的详细介绍和使用方法

    转载请注明出处:http://blog.csdn.net/yangyu20121224/article/details/8995025 由于TabActivity在Android4.0以后已经被完全弃 ...

  3. 如何通过牛顿方法解决Logistic回归问题 By 机器之心2017年8月09日 16:30 本文介绍了牛顿方法(Newton's Method),以及如何用它来解决 logistic 回归。log

    如何通过牛顿方法解决Logistic回归问题 By 机器之心2017年8月09日 16:30 本文介绍了牛顿方法(Newton's Method),以及如何用它来解决 logistic 回归.logi ...

  4. Python语言学习之文件格式后缀那些事:python和常见各种文件格式后缀介绍、使用方法之详细攻略

    Python语言学习之文件格式后缀那些事:python和常见各种文件格式后缀介绍.使用方法之详细攻略 目录 常见各种文件格式后缀介绍 .pyc文件介绍 .py文件介绍 .pxd 文件 .pyd 文件 ...

  5. CV之face_recognition:Py之face_recognition库安装、介绍、使用方法详细攻略

    CV之face_recognition:Py之face_recognition库安装.介绍.使用方法详细攻略 目录 face_recognition简介 face_recognition安装 face ...

  6. 【OJ】OJ的介绍和常用OJ推荐

    目录 OJ的介绍 编程刷题OJ集合 计蒜客(主刷编程题 ) 牛客网(编程题和选择题都有) 力扣(主要编程大题) 领扣(主刷大题) Comet OJ ACMORE Xidian Programming ...

  7. JSTL 及 tablibs 的简单介绍和配置方法

    JSTL 及 tablibs 的简单介绍和配置方法 jstl 简介 jstl 的全称就是jsp standard tag libraries, 就是jsp里的标准标签库. 引用jstl技术能在jsp种 ...

  8. informix 访问mysql_informix用户权限的介绍及查看方法

    informix用户权限的介绍及查看方法 在Informix中,有三个数据库特权级别:DBA.Resource 和 Connect Connect 特权允许用户访问数据库以及添加.修改和删除数据. R ...

  9. anaconda怎么使用python包_Anaconda中python包的介绍与使用方法

    Anaconda中python包的介绍与使用方法 目录: 1.包的定义 2.常用包管理器 3.包管理器的使用方法 4.数据科学常用的包 1.包的定义 由多个和同一功能相关的模块组成,通常为含有_ini ...

最新文章

  1. c++引用的自我见解
  2. 小冰负责人李笛:微软不缺钱,缺对未来的把握
  3. Redis 6.0 新特性-多线程连环13问!
  4. 《阿丽塔》脑机接口正从科幻走向现实
  5. Linux内存初始化(一)
  6. 【网页前端设计Front end】HTML语言基础.上(看不懂你来打我)
  7. java web学习笔记-jsp篇
  8. java 循环依赖_java – 如何在Gradle中解决循环依赖
  9. 自己写的android apk反编译,获取Android自己写好了的apk以及反编译
  10. 设计模式学习笔记——迭代器(Iterator)模式
  11. uniapp路由传多个参数_2020年家用路由器购买推荐(20200921更新)
  12. 场景分析:用户登录界面场景分析
  13. IIS安装程序无法复制文件的问题 安装IIS提示安装程序无法复制文件staxmem.d...
  14. ubuntu安装rubyOnRails
  15. Lemon OA_Lemon OA(开源OA系统)
  16. JAVA代码实现计算器功能
  17. 虚拟手机一款安卓模拟器,让你手机里拥有另外一台手机
  18. qq游戏不显示登陆服务器,QQ游戏怎么登陆? qq游戏不能登录怎么办?
  19. QQ群排名霸屏技术居然是这样简单
  20. Matlab读取二进制数据文件

热门文章

  1. java角谷_JAVA 角谷定理 递归
  2. 学习1368个单词 - 有关物和人的名词
  3. zabbix邮箱告警的三种方式
  4. java 字体大小 像素_字体的大小(pt)和像素(px)如何转换?
  5. 函数的参数(形参与实参)的理解
  6. 站住!做副业的亲,是时候跟你们做个了结了!
  7. YOLOv5全面解析教程③:更快更好的边界框回归损失
  8. vmlinuz、initrd.img、vmlinuz
  9. 空气质量模型学习笔记 ① -----(模型基本介绍)
  10. 在知网下载时只能caj,不能pdf