acm测评系统中判题(C,C++,Java),思路

想做一个acm测评系统,做为毕业设计。
卡在代码提交后的判题过程,,谁能够给一个思路,非常感谢~

阅读 3.2k
1 个回答

先做代码安全检查,比如防止fork炸弹啥的(会消耗干系统资源)

然后编译代码,判断是否有Compile Error

然后把测试数据做为输入,运行代码,得到输出,这期间:
根据运行时间,判断是否为Time Limit Exceeded超时错误。运行时候也要监控内存,超出预设内存则判为Memory Limit Exceeded

然后预期输出做比对。可以通过正则表达式来匹配。根据结果可以有Wrong AnswerAccepted,以及Presentation Error.

当然,还有其他一些问题,比如Segmentation Error段错误,以及Runtime Error等。

其实,你直接参考现有的OJ的开源实现啊。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进