您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
The tools to redirect the recent AtCoder Beginner Contest.
当前为
- // ==UserScript==
- // @name AtCoder-RedirectRecentABC
- // @namespace https://github.com/PenguinCabinet
- // @version v0.0.1
- // @description The tools to redirect the recent AtCoder Beginner Contest.
- // @author PenguinCabinet
- // @license MIT
- // @match https://atcoder.jp/contests*
- // @grant none
- // ==/UserScript==
- //config
- //config
- async function Newest_N(elem_id1, elem_id2) {
- const r = /AtCoder Beginner Contest ([1-9][0-9]*)/g;
- const contests_HTML_text = await (await fetch("https://atcoder.jp/contests/")).text();
- const doc = new DOMParser().parseFromString(contests_HTML_text, "text/html");
- let elem = doc.getElementById(elem_id1);
- if (!elem) {
- elem = doc.getElementById(elem_id2);
- }
- const text = elem.outerHTML;
- const ABC_texts = [...text.matchAll(r)];
- const Numbers = ABC_texts.map((e) => parseInt(e[1]));
- return Math.min.apply(null, Numbers);
- }
- (async function () {
- 'use strict';
- let urlHash = location.hash;
- if (urlHash) {
- const r = /#recent_abc((\-|\+)[1-9][0-9]*)?/;
- const result = urlHash.match(r);
- if (result != null) {
- let Ans = await Newest_N("contest-table-action", "contest-table-upcoming");
- let diff = result[1];
- if (diff === undefined) diff = 0;
- diff = parseInt(diff, 10);
- if (Ans != null) {
- window.location.replace(`https://atcoder.jp/contests/abc${Ans + diff}`);
- }
- }
- }
- // Your code here...
- })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址