项目理念|现场评判

项目名称: 现场法官 其目的是为学生和教师提供一个框架,在没有任何互联网连接的情况下在大学举办编码竞赛,以鼓励公平竞争,避免任何滥用。这也将有助于减少比赛中通常遇到的技术故障。

null

背景: 一个让我们自己“现场评判”的想法的产生可以归因于我在我们机构举办的一次特定编码竞赛中遇到的一个PC^2错误,这最终影响了排名。 在这场竞争之后进行的进一步研究发现,PC^2在过去多次失败。这引发了一种需要,即创建一个无障碍的平台来评判未来的编码竞赛。

目标: 我的工作目标是设计一个健壮、高效的系统,在不使用任何互联网连接的情况下在大学举办编码竞赛。

导言:

  • 它是由SPOJ和Codechef等公司制作的现场评委,但没有使用任何互联网连接。
  • 它将允许互联网连接不良的大学举办编码比赛。
  • 这是一个运行在大学内部网连接上的网络应用,使其跨平台运行。
  • 唯一的限制是它需要Linux来运行Judge,而提交可以从任何操作系统进行。

法官目前接受以下语言的陈述:

  • C
  • C++,C++ 14
  • Python 2,Python 3
  • Java,Java 8

现行制度的问题:

    目前的制度有以下缺点:

  • 它使用互联网连接,这有时会使编码竞争变得不公平,因为它为学生作弊提供了一个窗口。
  • 它们还经常出现一些技术故障和崩溃,这破坏了编程的精神。
  • 它们中的大多数不会检查导致意外系统行为的恶意代码。
  • 各种在线系统没有为大学提供任何平台来进行内部评分的私人编码竞争。
  • 现场法官试图克服所有这些问题。

概念框架:

现场评审是在Django框架上开发的,使用多处理来提供异步提交队列。

特征:

  1. 目前,法官允许用户用不同的语言编译和测试代码。
  2. 以不同语言提交问题,并以AC、WA、TLE和运行时错误的形式返回裁决。
  3. 创建竞赛、删除竞赛、查看排名列表。
  4. 比赛后登录、注册、查看提交和编辑。
  5. Coordinator最多可以为竞赛中的特定问题上传10个测试用例。
  6. 在提交问题和上传测试用例时,添加了Bug checker以检查恶意代码/病毒。
  7. 提供三个类别:用户、协调员、管理员。
    • 用户可以查看比赛,提交比赛问题,编译和测试,查看排名。
    • 协调员-可以通过testcase和解决方案为特定竞赛添加问题。
    • 管理员–可以创建、删除竞赛、用户帐户和问题。

图表:

图片[1]-项目理念|现场评判-yiteyi-C++库

图片[2]-项目理念|现场评判-yiteyi-C++库

图片[3]-项目理念|现场评判-yiteyi-C++库 使用的工具: 使用Python全栈进行判断。

申请:

它的设计是为了满足诺伊达Jaypee信息技术学院举办的比赛的特定要求,但它的大部分组件可以轻松更改,以满足任何其他学院的要求。

这也将为更好地评估内部考试中的编码问题提供一个平台,因为现场评委将使我们学院的学生只能参加编码比赛。

github: https://github.com/chunky2808/Karmo-Onsite-Judge 阅读研究论文 克服PC^2的缺点。

注: 这个项目的想法是由 杰恩 (诺伊达杰佩信息技术学院) ProGeek Cup 2.0——Geeksforgeks举办的项目竞赛。

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享