The ACMOJ Blog

#特性

API 变更:获取提交记录的代码将需要 Authorization Header

自 2025 年 6 月 1 日起,访问 /submission/{submission id} 接口返回的 code_url 将需要传入 Authorization header 进行鉴权,与其他 API 接口一致。

阅读全文 →

现已支持上传题目附件

为保障 OJ 题目长期完整可用,我们推出了题目附件功能。推荐您将题目的下发文件、公开的大样例等题目附件上传至题目附件区。题目发布后,用户即可直接从题面下载这些文件。

阅读全文 →

API 现已支持获取 OJ 配置及状态

API 新增关于 OJ 配置及状态相关的接口,开发者无需在代码中内嵌此部分数据。

阅读全文 →

使用 Nix 管理评测环境

长期以来,评测机使用操作系统(Ubuntu Server)提供的编译器和运行时来评测用户程序。受制于 Ubuntu 较为保守的版本策略,我们无法及时支持最新的编译器版本。同时,评测机环境全部通过 apt 手动安装,并没有一个标准化的评测环境。近期,我们使用 Nix 描述了标准化的评测环境,评测时将使用 Nixpkgs 提供的编译器、运行时等,而不再使用 Ubuntu 自带的环境。

阅读全文 →

关于 testlib 与 I/O 交互题

ACMOJ 最近加入了对 testlib 和 I/O 交互题的支持。fstqwq 作为资深算法竞赛选手和 ACMOJ 的长期用户,为这些功能提出了很多建议。我们邀请他对这些特性做了一个简要的介绍。

阅读全文 →

现已支持多组测试样例、题面导入导出

很多题目的题面中会提供不止一组的测试样例,现已支持在题面中添加多组测试样例,并已支持将题面从 Markdown 文件导入,或导出为 Markdown 文件。

阅读全文 →

现已支持迟交及创建比赛副本

现在,管理员可以在作业管理中设置作业的迟交设置,还可以创建比赛及作业的副本。

阅读全文 →

使用更高效的输出比对工具

我们已经将输出比对工具更换为由我们自己编写的比对工具,相较于之前使用的通用比对工具 diff,我们的比对工具更为高效,尤其是在比对的文件很大且完全不同时。本文将会介绍使用自己编写的比对工具的原因,以及我们自己编写的输出比对工具的功能。

阅读全文 →

2024 寒假更新日志

我们在 2024 寒假中进行了诸多变动,包括引入 python、引入新的班级机制、支持在 Git 提交时加入助教指定的文件一起编译、助教指定文件与用户提交冲突检查、增加 Bad Problem 状态、支持作业的导出功能等。

阅读全文 →

现已支持 Python 评测

ACMOJ 现已支持提交 Python 代码。使用 Python 提交时,时间和内存限制与 C++ 相同,但 Python 代码经常比 C++ 慢,在部分题目上可能会 TLE,敬请注意。

阅读全文 →