1. 首页
  2. 评测记录
  3. 公告
  1. 登录
  2. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文

2022tysc1762

UID: 9885, 注册于 2022-7-27 20:30:09, 最后登录于 2025-5-7 14:34:27, 目前离线.

解决了 569 道题目,RP: 267.47 (No. 70)

♂
  • 个人简介

    一枚蒟蒻叛徒

    一切都过去了

    再见

    留点回忆,以前的主页:

    油猴hydro优化 (修改自@ 主页 ,原版在主页传送门最下方)

    PS:

    背景图片与一首音乐可修改,点击oiclass页面左下角查询,并将图片链接和网易云音乐的外联播放器代码复制进去保存即可

    复制时请长按输入框并直接按 ControlControlControl vvv , 松开后会退出查询页面,重新进去再点击保存即可

    // ==UserScript==
    // @name         Better Hydro
    // @namespace    http://tampermonkey.net/
    // @version      3.0
    // @description  Improve the Hydro interface with custom settings!
    // @author       Cheerimy
    // @match        *://hydro.ac/*
    // @match        *://goj.wiki/*
    // @match        *://www.goj.wiki/*
    // @match        *://oiclass.com/*
    // @match        *://www.oiclass.com/*
    // @match        *://106.53.100.188:1000/*
    // @icon         https://s21.ax1x.com/2024/08/22/pAi6KDP.png
    // @grant        none
    // @license GPLv3
    // @downloadURL https://update.greasyfork.org/scripts/504607/Better%20Hydro.user.js
    // @updateURL https://update.greasyfork.org/scripts/504607/Better%20Hydro.meta.js
    // ==/UserScript==
    
    (function() {
    	'use strict';
    	//Cookies 初始化函数
    	function setCookieIfNotExists(name, value) {
    		if (!document.cookie.split('; ').map(cookie => cookie.split('=')[0]).includes(name)) {
    			document.cookie = `${name}=${encodeURIComponent(value)};path=/;expires=${new Date(Date.now()+365*24*60*60*1000).toUTCString()}`
    		}
    	}
    	//获取 Cookies 模块
    	function getCookie(name) {
    		const match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));
    		return match ? decodeURIComponent(match[2]) : null
    	}
    	//初始化 Cookies 模块
    	function initCookies() {
    		setCookieIfNotExists('browserupdateorg', 'pause');
    		setCookieIfNotExists('background', 'https://api.imlazy.ink/mcapi/mcbg.php');
    		setCookieIfNotExists('music', '//music.163.com/outchain/player?type=2&id=133567&auto=0&height=66');
    		console.log('Cookies 模块加载成功!');
    	}
    	//基本模块(欢迎栏与 UI 优化)
    	function loadWelcomeMessage() {
    		const username = Array.from(document.querySelectorAll('li[data-dropdown-target="#menu-nav-user"]')).map(item => item.querySelector('a')).find(link => link && link.textContent.trim() !== 'Language')?.textContent.trim() || 'Visitor';
    		const panel = document.getElementById('panel');
    		panel.style.backgroundImage = `url(${getCookie('background')})`;
    		panel.style.backgroundSize = 'cover';
    		panel.style.backgroundPosition = 'center';
    		const style = document.createElement('style');
    		style.textContent = `.section{border-radius:8px!important;opacity:0.75!important}.section__table-header{border-radius:8px 8px 0 0;opacity:0.75!important}`;
    		document.head.append(style);
            const title=document.title;
            const name=title.split(" - ").pop().trim();
            const newHTML='';
    		//const newHTML = `<div class="section visible"><div class="section__header"><h1 class="section__title">欢迎 ${username} 来到 ${name}!</h1><h1 class="section__title"style="text-align: end;">Let's Coding Now!</h1></div></div>`;
    		const main = panel.querySelector('.main');
    		const element = main.querySelector('div');
    		element.insertAdjacentHTML('afterbegin', newHTML);
    		console.log('基本模块加载成功!');
    	}
    	//音乐模块(播放音乐源音乐)
    	function loadMusicPlayer() {
    		const musicURL = getCookie('music');
    		const musicHTML = `<div class="section side visible"><div class="section__header"><h1 class="section__title">一首歌曲</h1></div><div class="section__body typo"><iframe frameborder="no"border="0"marginwidth="0"marginheight="0"width="100%"height="86"src="${musicURL}"></iframe></div></div>`;
    		const row = document.getElementById('panel').querySelector('.main').querySelector('.row');
    		const divs = row.querySelectorAll(':scope > div');
    		divs.forEach(div => {
    			const className = div.className;
    			if (className.includes('medium-3') && className.includes('columns')) {
    				div.insertAdjacentHTML('afterbegin', musicHTML)
    			}
    		});
    		console.log('音乐播放器加载成功!')
    	}
    	//个性化面板模块
    	function loadSettingsPanel() {
    		const settingDiv = document.createElement('div');
    		settingDiv.id = 'setting';
    		settingDiv.innerHTML = `<div class="section side visible"><div class="section__header"><h1 class="section__title">设置</h1></div><style>.input-group{display:flex;flex-direction:column;gap:10px;max-width:400px;margin:0 auto}.input-group label{font-size:14px;color:#333}.input-group input[type="text"]{padding:8px;font-size:14px;border:1px solid#ccc;border-radius:4px;width:100%;box-sizing:border-box}.input-group input[type="text"]::placeholder{color:#999}</style><div class="section__body typo"><div class="input-group"><label for="background-url">背景图片:</label><input type="text"id="background-url"placeholder="输入背景图片地址"><button id="save-background">保存背景</button><label for="music-url">音乐地址:</label><input type="text"id="music-url"placeholder="输入音乐播放器地址"><button id="save-music">保存音乐</button></div></div></div>`;
    		const omnibarContent = document.getElementById('omnibar-content');
    		omnibarContent.insertAdjacentElement('afterend', settingDiv);
    		const setCookie = (name, value, days = 365) => {
    			const expires = new Date(Date.now() + days * 24 * 60 * 60 * 1000).toUTCString();
    			document.cookie = `${name}=${value};expires=${expires};path=/`
    		};
    		const saveInput = (inputId, cookieName) => {
    			const input = document.getElementById(inputId);
    			if (input) {
    				setCookie(cookieName, input.value)
    			} else {
    				console.error(`Element#${inputId}not found`)
    			}
    		};
    		document.getElementById('save-background').onclick = () => saveInput('background-url', 'background');
    		document.getElementById('save-music').onclick = () => saveInput('music-url', 'music');
    		console.log('个性化面板模块加载成功!')
    	}
    	//尝试加载 Cookies 模块
    	try {
    		initCookies();
    	} catch (error) {
    		console.error('Cookies 模块加载失败,错误::', error);
    	}
    	//尝试加载基础模块
    	try {
    		loadWelcomeMessage();
    	} catch (error) {
    		console.error('基础模块加载失败,错误::', error);
    	}
    	//尝试加载音乐模块
    	try {
    		loadMusicPlayer();
    	} catch (error) {
    		console.error('音乐模块加载失败,错误::', error);
    	}
    	//尝试个性化面板面板模块
    	setTimeout(function() {
    		try {
    			loadSettingsPanel();
    		} catch (error) {
    			console.error('个性化面板模块加载失败,错误::', error);
    		}
    	}, 2000);
    })();
    
  • 最近活动

    • 第五届oiClass信息学夏令营day8作业-for循环专题练习2 作业
    • 2024春季班class8-多维&差值DP 课后作业 作业
    • 【oiClass公益赛】2024CSP-J模拟赛#18「WZA Round #2」 OI
    • 2024春季班class8-多维&差值DP 随堂练习 作业
    • 2024春季班class7-倍增-ST算法 课后作业 作业
    • 2024春季班class7-倍增-ST算法 随堂练习 作业
    • 2024春季班class6-区间型动态规划2-区间合并 课后作业 作业
    • 2024春季班class6-区间型动态规划2-区间合并 随堂练习 作业
    • 2024春季班class5-区间分割型动态规划 课后作业 作业
    • 2024春季班class5-区间分割型动态规划 随堂练习 作业
    • 【oiClass公益赛】2024CSP-J模拟赛#08 || For Riddles, For Wonders OI
    • 2024春季班class4-背包型动态规划2课后作业 作业
    • 2024春季班class4-背包型动态规划2随堂练习 作业
    • 【oiClass公益赛】2024CSP-J模拟赛#20 OI
    • 2024春季班class3-背包型动态规划1课后作业 作业
    • 2024春季班class3-背包型动态规划1随堂练习 作业
    • 【oiClass公益赛】2024CSP-J模拟赛#15 OI
    • 2024春季班class2-二维动规&最长公共子序列课后作业 作业
    • 2024春季班class2-二维动规&最长公共子序列随堂练习 作业
    • 【oiClass公益赛】2024CSP-J模拟赛#06 || LSZOI #01 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#17 OI
    • 2024春季班class1-一维动规&最长不下降子序列课后作业 作业
    • 2024春季班class1-一维动规&最长不下降子序列随堂练习 作业
    • 【oiClass 公益赛】2024 CSP-J 模拟赛 #13 & XYZ Round 1 OI
    • 【oiclass 公益赛】2024 CSP-J 模拟赛 #11 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#10 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#19 OI
    • 备用 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#14 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#09 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#07 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#16 OI
    • 【oiClass公益赛】2024 CSP-J 模拟赛 #04 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#03 OI
    • 【oiClass公益赛】2024CSP-J模拟赛 #05 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#02 OI
    • 【oiClass公益赛】2024CSP-J模拟赛#01 OI
    • 2023-2024学年冬令营Class6-双指针 作业
    • 2023-2024学年冬令营Class4-二分搜索2 作业
    • 2023-2024学年冬令营Class3-二分搜索1 作业
    • 2023-2024学年冬令营Class1-广搜2 作业
    • 2023-2024学年冬令营Class1-广搜1 作业
    • 张晋嘉、倪穗霆杂题 作业
    • 2023年秋季营lesson15作业-深度优先搜索算法2 作业
    • 2023学年秋季班_模拟测试11 OI
    • 2023年秋季营lesson14作业-深度优先搜索算法1 作业
    • 2023年秋季营lesson13作业-递归算法2 作业
    • 2023学年秋季班_模拟测试09 OI
    • 2023学年秋季班_模拟测试08 OI
    • 2023年秋季营lesson12作业-递归算法1 作业
    • 2023年秋季营lesson11作业-阶段测试2(仅供改题) 作业
    • 2023年秋季营lesson10作业2-队 作业
    • 2023年秋季营lesson10作业1-栈 作业
    • 2023年秋季营阶段测试2 OI
    • 2023学年秋季班_模拟测试07 OI
    • 2023年秋季营lesson9作业2-差分前缀和 作业
    • 2023年秋季营lesson9作业1-递推算法 作业
    • 2023学年秋季班_模拟测试06 OI
    • 2023年秋季营lesson8作业-指针&贪心 作业
    • 2023学年秋季班_模拟测试05 OI
    • 2023年秋季营lesson7作业-位运算 作业
    • 2023年秋季营lesson6作业-进制转换 作业
    • 【oiClass公益赛】2023CSPJ模拟赛#10 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#09 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#08 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#07 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#06 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#05 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#04 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#03 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#02 OI
    • 【oiClass公益赛】2023CSPJ模拟赛#01 OI
    • 2023学年秋季班_模拟测试04 OI
    • 2023年秋季营lesson4作业-排序&枚举 作业
    • 第五届oiClass信息学夏令营day22作业-结构体和函数 作业
    • 2023学年秋季班_模拟测试02 OI
    • 2023年秋季营lesson2作业-字符数组&字符串 作业
    • 2023学年秋季班_模拟测试01 OI
    • 2023年秋季营lesson1作业-二维数组 作业
    • 夏令营模拟测试-05 OI
    • 夏令营模拟测试-03 OI
    • 2023年第四届oiClass夏令营线上选拔赛 OI
    • 夏令营第二周模拟测试 OI
    • 第五届oiClass信息学夏令营day6作业-for语句3 作业
    • 夏令营第一周模拟测试 OI
    • 开学DP测试 IOI
  • Stat

  • Rating

645
已递交
569
已通过
0
题解被赞

状态

  • 评测队列
  • 服务状态

开发

  • 开源
  • API

支持

  • 帮助
  • QQ 群
  1. 关于
  2. 联系我们
  3. 隐私
  4. 服务条款
  5. 版权申诉
  6. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  7. 兼容模式
  8. 主题
    1. 亮色
    2. 暗色
  1. 粤ICP备2024335011号
  2. Worker 0, 110ms
  3. Powered by Hydro v4.19.1 Community
关闭

登录

使用您的 oiClass 通用账户

忘记密码或者用户名?