my cf

CF插件,可以跳转洛谷

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         my cf
// @namespace    xay5421
// @author       xay5421
// @match        *://codeforces.com/problemset/problem/*
// @match        *://codeforces.com/contest/*/problem/*
// @match        *://codeforces.ml/problemset/problem/*
// @match        *://codeforces.ml/contest/*/problem/*
// @match        *://codeforces.com/*
// @version      0.1
// @description  CF插件,可以跳转洛谷
// @require       https://code.jquery.com/jquery-3.4.1.min.js
// ==/UserScript==

const pathname=location.pathname

if(/\/problemset\/problem\/(\d*)\/([A-Z][1-9]?)$/.test(pathname)){
	location.href=`/contest/${RegExp.$1}/problem/${RegExp.$2}`;
}
else if(/\/contest\/(\d*)\/problem\/([A-Z][1-9]?)$/.test(pathname)){
	let x=$('.header>.title'),y=x.html();
	x.html(`<a href="https://www.luogu.com.cn/problem/CF${RegExp.$1+RegExp.$2}" target="_blank">${y}</a>`);
}

if(0){
    var stateObject = {};
    var title = "Wow Title";
    var newUrl = "/my/awesome/url";
    history.pushState(stateObject,title,newUrl);
}