每个学校 ACM 队在训练或者招生的时候可能都需要一个 oj ,我们常用的 oj 是杭电的,但是有些不是很满意的地方。
首先是界面,国内的 oj 除了 pat 、 codevs 等大多数都很丑很丑, 10 多年前的风格,可能因为 oj 就是 10 年前写的吧。
用起来也有些不是很方便的地方,比如提交题目要新开页面,要再选择题号,再手动刷新看结果。自己内部比赛有些规则也没办法去设置,自己没法去添加题目去查看测试用例等等。
所以我们实验室三个人用了大约暑假一个半月的时间,自己写了一个 oj ,我们的定位不仅仅是 ACM 训练,还有学校平时教学的作业考试等也可以在上面进行。 老师作为普通管理员可以创建小组,相当于一个班级,内部举办比赛,创建修改题目,外人不可见,超级管理员才可以管理公开的题目和比赛。
后端涉及到的技术有 Python 、 Django 、 Docker 、 MySQL 、 Redis 、 Celery 等,后台的前端是一个 SPA 页面,使用 avalon js 。
GitHub: https://github.com/QingdaoU/OnlineJudge (顺手 star 一个吧~)
文档: https://www.zybuluo.com/virusdefender/note/171932
demo: https://qduoj.com
给大家提前注册了账号,用户名 V2EX (都是小写的,论坛会自动转换为大写),密码 123456 ,欢迎去试用一下。
有什么问题或者建议欢迎在下面回复。
谢谢啦~
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.