GenGen RMJ

· · 科技·工程

我爱洛谷

省流:洛谷官方 RMJ 到来前的临时替代,仅供学习使用,禁止商业。

:::align{center}
\quad\huge\text{GenGen RMJ 3.1}


:::

:::info[必读]{open} 本脚本仅作为洛谷官方付费 RMJ 功能空窗期的临时替代方案,将持续维护至 2026 年暑期洛谷官方 RMJ 稳定上线为止。

(以前的)洛谷 RMJ 采用中心化服务端代理,保障安全性、隐私性与合规性;

VJudge 也采用中心化的服务端代理,但是比洛谷激进一些,但也依旧无法绕过 CF 盾的限制,并且无法提交 AtCoder 和 CodeForces 的未评级用户。

而本脚本依赖用户本地环境,权限更高、风险更大、稳定性更低,但能完整且合法的通过 CF 盾等人机验证操作。

二者不可简单比较,更不应因本脚本的存在而质疑洛谷的技术能力,

请不要向管理员或者工单中发送此脚本的相关建议或者错误,以免浪费管理员的时间,

我们坚决反对任何贬低洛谷开发团队的言论。

:::

GenGen RMJ 是一款基于用户脚本(UserScript)的浏览器插件,专为统一 OIer 在 Codeforces 与 AtCoder 平台上的做题效率而设计。

本插件由 GenGen 队 开发,真实的发送提交请求或者人模拟提交,并且获取评测结果。

:::warning[重要声明]{open}

:::

对于 RemoteJudge 的定义

对于此关键问题,我们选自了官方的解释: RemoteJudge 功能帮助用户打破不同 Online Judge 之间的壁垒,可以在洛谷里提交全网的题目,并且可以使用洛谷其他的配套功能,例如讨论、查看和提交题解、收藏题目、管理代码、团队作业等等。使用这项功能非常便利,也会有更好的体验,可以极大的提升学习效率。

背景说明

自 2024 年起,随着 Codeforces 全面启用 Cloudflare Turnstile 人机验证机制(“CF 盾”),洛谷原有的 RemoteJudge(后文简写为 RMJ) 服务因架构限制无法穿透该验证层,导致对 CF 平台的提交彻底失效。AtCoder 等平台亦逐步加强前端反自动化策略,使得传统集中式代理方案难以维持。

在此背景下,社区出现大量跳转类脚本(如 VJudge 跳转),但其仅实现页面跳转,无法完成自动提交与结果拉取,用户体验割裂。GenGen RMJ 应运而生,采用纯前端自动化方案,在用户本地浏览器中完成代码填充、Cloudflare 交互、提交触发与结果轮询,真正复现了原 RMJ 的核心流程

需要特别强调的是:洛谷的官方付费 RMJ 也即将发布,本插件只是临时过渡。洛谷采用中心化服务端代理,保障安全性、隐私性与合规性;而本脚本依赖用户本地环境,权限更高、风险更大、稳定性更低。二者不可简单比较,更不应因本脚本的存在而质疑洛谷的技术能力。我们坚决反对任何贬低洛谷开发团队的言论。

安装指南

第一步:安装用户脚本管理器

请选择以下任一浏览器扩展:

:::warning[切记]{open} 我们对篡改猴仅保留兼容态度,如果有 Bug,请更换脚本管理器,不接受任何篡改猴的 Bug 反馈。 :::

:::error[关于 Chrome 用户]

由于 Chrome 商店限制,普通用户难以直接安装扩展。如你坚持使用 Chrome,请按以下步骤操作:

  1. 从镜像站下载暴力猴:Chrome 镜像站链接
  2. 下载 .zip 文件并解压,得到 .crx 文件
  3. 进入 Chrome chrome://extensions/
  4. 开启右上角 “开发者模式”
  5. .crx 文件拖入扩展页面完成安装

我们仍强烈建议你换用 Microsoft Edge,以获得更稳定、便捷的使用体验。 :::

第二步:安装 GenGen RMJ

  1. 打开网页:GenGen RMJ
  2. 点击 “安装”按钮
  3. 安装成功后,进入洛谷主页,可以看到一个面板的按钮。

使用说明

1. 绑定账号与查看状态

安装成功后,进入洛谷主页,点击右上角 GenGen 图标,可查看当前绑定的 Codeforces 与 AtCoder 账号状态。若未绑定,点击“绑定”按钮跳转至对应平台登录页。

先按照步骤绑定账号。

2. 提交代码至远程 OJ

在洛谷题目页面(CF 或 AT 前缀)点击 “提交”按钮,脚本将根据用户类型自动选择提交路径:

提交时通过 Cloudflare 盾的演示(AtCoder)

提交时通过 Cloudflare 盾的演示(CodeForces 未评分用户)

提交时的演示(CodeForces 评分用户)

:::info[当前限制]{open}
无论你在洛谷编辑器中选择何种语言,实际提交语言固定为 C++23(CF: G++23, ID=91;AT: C++23, ID=6017)。此为工程简化决策,未来可能支持映射。
:::

3. 查看提交记录

本脚本支持自动轮询刷新评测结果,并聚合展示历史记录:

AtCoder 记录(基于 kenkoooo 和脚本的本地爬取):

CodeForces 记录(基于 CF 官方 API)

视频展示

问题反馈与更新

欢迎在 讨论区 或私信提交建议与反馈!

:::::success[关于我们]{open}

We are GenGen

了解 GenGen 队

我们是一支致力于为 OIer 提供优质工具体验的学生开发团队。

所有项目均利用课余时间开发,你的认可与传播是我们最大的动力
欢迎转发、推荐、安利我们的项目

:::info[你们的支持是我们前进的燃料]{open}

:::
:::::